<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf8">

<title>BIOS和DOS中断大全</title>
</head>

<body background="../index.files/back_bluh.jpg">

<p><font size="5" color="#3366FF"><b>BIOS和DOS中断大全</b></font></p>     

<p><br>
中断INT 21H :<br> 
1、字符功能调用类(Character-Oriented Function)<br> 
      01H、07H和08H ―从标准输入设备输入字符<br> 
      02H ―字符输出<br> 
      03H ―辅助设备的输入<br> 
      04H ―辅助设备的输出<br> 
      05H ―打印输出<br> 
      06H ―控制台输入/输出<br> 
      09H ―显示字符串<br> 
      0AH ― 键盘缓冲输入<br> 
      0BH ―检测输入状态<br> 
      0CH ―清输入缓冲区的输入功能<br> 
<br>
(1)、功能01H、07H和08H&nbsp;<br>
      功能描述：从标准输入设备(如：键盘)读入一个字符。该中断在处理过程中将一直处于等待状态直到有字符可读为止。该输入还可被重定向，如果这样做，则无法判断文件是否已到文件尾<br>
      入口参数：AH＝01H，过滤掉控制字符，并回显<br>
　＝07H，不过滤掉控制字符，不回显<br>
　＝08H，过滤掉控制字符，不回显<br>
      出口参数：AL＝输入字符的ASCII码<br>
<br>
(2)、功能02H<br>
      功能描述：向标准输出设备(如：屏幕)输出一个字符。该输出还可被重定向，如果这样做，则将无法判断磁盘是否满<br>
      入口参数：AH＝02H<br>
      DL＝待输出字符的ASCII码<br>
      出口参数：无<br>
<br>
(3)、功能03H<br>
      功能描述：从辅助设备读入一个字符，该辅助设备的缺省值为COM1<br>
      入口参数：AH＝03H<br>
      出口参数：AL＝读入字符的ASCII码<br>
<br>
(4)、功能04H<br>
      功能描述：向辅助设备输出一个字符，该辅助设备的缺省值为COM1<br>
      入口参数：AH＝04H<br>
      DL＝待输出字符的ASCII码<br>
      出口参数：无<br>
<br>
(5)、功能05H<br>
      功能描述：向标准的输出设备输出一个字符。该缺省的输出设备为LPT1端口的打印机，除非用MODE命令来改变<br>
      入口参数：AH＝05H<br>
      DL＝待输出字符的ASCII码<br>
      出口参数：无<br>
<br>
(6)、功能06H<br>
      功能描述：控制台(如：键盘、屏幕)输入/输出。如果输入/输出操作被重定向，那么，将无法判断文件是否已到文件尾，或磁盘已满<br>
      入口参数：AH＝06H，DL＝输入/输出功能选择<br>
      出口参数：若DL＝00H-FEH，则此功能为输出，DL为待输出字符的ASCII码；<br>
      若DL＝0FFH，则此功能为输入，此时：若ZF＝1，则无字符可读，否则，AL＝读入字符的ASCII码<br>
<br>
(7)、功能09H<br>
      功能描述：输出一个字符串到标准输出设备上。如果输出操作被重定向，那么，将无法判断磁盘已满<br>
      入口参数：AH＝09H<br>
      DS:DX＝待输出字符的地址<br>
      说明：待显示的字符串以’$’作为其结束标志<br>
      出口参数：无<br>
<br>
(8)、功能0AH<br>
      功能描述：从标准输入设备上读入一个字节字符串，遇到“回车键”结束输入(输入的字符在标准的输出设备上有回显)。如果该输入操作被重定向，那么，将无法判断文件是否已到文件尾<br>
      入口参数：AH＝0AH<br>
      DS:DX＝存放输入字符的起始地址<br>
      接受输入字符串缓冲区的定义说明：<br>
　　1、第一个字节为缓冲区的最大容量，可认为是入口参数；<br>
　　2、第二个字节为实际输入的字符数(不包括回车键)，可看作出口参数；<br>
　　3、从第三个字节开始存放实际输入的字符串；<br>
　　4、字符串以回车键结束，回车符是接受的最后一个字符；<br>
　　5、若输入的字符数超过缓冲区的最大容量，则多出的部分被丢弃，系统并发出响铃，直到输入“回车”键才结束输入。&nbsp;<br>
      例如：<br>
　　BUFF　80, ?, 80 DUP(?)　　　;最多接受80个字符<br>
      出口参数：无<br>
<br>
(9)、功能0BH<br>
      功能描述：检查标准输入设备上是否有字符可读。该输入操作可被重定向<br>
      入口参数：AH＝0BH<br>
      出口参数：AL＝00H――无字符可读；FFH――有字符可读<br>
<br>
(10)、功能0CH<br>
      功能描述：清空当前的标准输入缓冲区，再读入字符。其输入操作可被重定向<br>
      入口参数：AH＝0CH<br>
      AL＝01H、06H、07H、08H或0AH<br>
      出口参数：若入口参数AL为0AH，则DS:DX＝存放输入字符的起始地址，否则，出口参数AL＝输入字符的ASCII码<br>
      2、目录控制功能(Directory-Control Function)<br> 
            39H ―创建目录<br> 
            3AH ―删除目录<br> 
            3BH ―设置当前目录<br> 
            47H ―读取当前目录<br> 
<br>
<br>
(1)、功能39H<br>
      功能描述：用指定的驱动器和路径创建一个新目录<br>
      入口参数：AH＝39H<br>
      DS:DX＝指定路径的字符串地址(以0为字符串的结束标志)<br>
      出口参数：CF＝0――创建成功，否则，AX＝错误号(03H或05H)，其含义见错误代码表<br>
<br>
(2)、功能3AH<br>
      功能描述：删除指定的驱动器和路径的目录<br>
      入口参数：AH＝3AH<br>
      DS:DX＝指定路径的字符串地址(以0为字符串的结束标志)<br>
      出口参数：CF＝0――删除成功，否则，AX＝错误号(03H或05H)，其含义见错误代码表<br>
<br>
(3)、功能3BH<br>
      功能描述：用指定的驱动器和路径设置为当前目录<br>
      入口参数：AH＝3BH<br>
      DS:DX＝指定路径的字符串地址(以0为字符串的结束标志)<br>
      出口参数：CF＝0――设置成功，否则，AX＝错误号(03H)，其含义见错误代码表<br>
<br>
(4)、功能47H<br>
      功能描述：取当前目录的完全路径字符串<br>
      入口参数：AH＝47H<br>
      DL＝驱动器号(0=缺省，1＝A，…)<br>
      DS:SI＝存放当前目录字符串的地址<br>
      出口参数：CF＝0――读取成功，否则，AX＝错误号(0FH)，其含义见错误代码表<br>
<br>
3、磁盘管理功能(Disk-Management Function)<br> 
      0DH ―磁盘复位 2EH ―设置校验标志&nbsp;<br>
      0EH ―选择磁盘36H ―读取驱动器分配信息<br> 
      19H ―读取当前驱动器54H ―读取校验标志<br> 
      1BH, 1CH ―读取驱动器数据<br> 
<br>
(1)、功能0DH<br>
      功能描述：清空当前的文件缓冲区，但在MS-DOS内，暂时写入缓冲区的数据将写入磁盘<br>
      入口参数：AH＝0DH<br>
      出口参数：无<br>
<br>
(2)、功能0EH<br>
      功能描述：指定当前驱动器<br>
      入口参数：AH＝0EH<br>
      DL＝驱动器号(0＝A，1＝B，...)<br>
      出口参数：AL＝系统中当前的驱动器号<br>
<br>
(3)、功能19H<br>
      功能描述：取当前缺省驱动器号<br>
      入口参数：AH＝19H<br>
      出口参数：AL＝驱动器号(0＝A，1＝B，...)<br>
<br>
(4)、功能1BH和1CH<br>
      功能描述：获得驱动器的分配信息<br>
      入口参数：AH＝1BH――为缺省驱动器<br>
      AH＝1CH――为任意驱动器，DL＝驱动器号(0＝缺省，1＝A，...)<br>
      出口参数：AL＝0FFH――失败，否则，<br>
　　AL＝每簇的扇区数<br>
　　DS:BX＝ID字节的地址<br>
　　CX＝物理扇区的大小(字节数)<br>
　　DX＝驱动器的簇数<br>
<br>
(5)、功能2EH<br>
      功能描述：设置／清除操作系统自动读取检验标志<br>
      入口参数：AH＝2EH<br>
      DL＝00H<br>
      AL＝00H――清除该标志，01H――设置该标志<br>
      出口参数：无<br>
<br>
(6)、功能36H<br>
      功能描述：取选定驱动器的信息<br>
      入口参数：AH＝36H<br>
      DL＝驱动器号(0-缺省，1=A，2=B，…)<br>
      出口参数：若功能调用失败，AX=0FFFFH，否则，<br>
　　AX＝每簇的扇区数<br>
　　BX＝可用的簇数<br>
　　CX＝物理扇区的大小(字节数)<br>
　　DX＝驱动器中的簇数<br>
<br>
(7)、功能54H<br>
      功能描述：读取校验标志<br>
      入口参数：AH＝54H<br>
      出口参数：AL＝当前检验标志值：00H―关检验，01H―开检验<br>
<br>
4、文件操作功能(File Operation Function)<br> 
      3CH ―创建文件<br> 
      3DH ―打开文件<br> 
      3EH ―关闭文件<br> 
      41H ―删除文件<br> 
      43H ―读取/设置文件属性<br> 
      45H ―复制文件句柄<br> 
      46H ―重定义文件句柄<br> 
      4EH ―查找到第一个文件<br> 
      4FH ―查找下一个文件<br> 
      56H ― 文件换名<br> 
      57H ―读取/设置文件的日期和时间<br> 
      5AH ―创建临时文件<br> 
      5BH ―创建新文件<br> 
      67H ―设置文件句柄数(最多文件数)<br> 
      6CH ―扩展的打开文件功能(打开、创建或替换文件)<br> 
<br>
(1)、功能3CH<br>
      功能描述：用指定的文件名创建一个新文件。如果指定的文件已存在，则设置其长度为0。创建后，该文件是打开的，并返回其句柄<br>
      入口参数：AH＝3CH<br>
      DS:DX＝指定文件名字符串的地址(以0为字符串的结束标志)<br>
      CX＝文件属性(这些标志位可以组合) 位0=1――只读<br> 
            位2=1――系统<br>
            位5=1――归档位1=1――隐含<br>
            位3=1――卷标号<br>
            其它位保留不用，并置为0<br>
<br>
      出口参数：CF＝0――创建成功，AX＝文件句柄，否则，AX＝错误号(03H、04H或05H)，其含义见错误代码表<br>
<br>
(2)、功能3DH<br>
      功能描述：打开指定的驱动器、路径和文件名，并返回其文件句柄<br>
      入口参数：AH＝3DH<br>
      DS:DX＝表明文件的字符串(以0为字符串的结束标志)<br>
      AL为打开方式： 位0~2000―只读方式　　001―写方式　　010―读/写方式<br>
            位3保留，其值为0<br>
            位4~6共享模式 000―兼容模式001―不共享010―拒绝写<br> 
                  011―拒绝读100―不拒绝任何操作<br>
<br>
            位7继承标志――0/1：子进程继承或不继承句柄<br>
<br>
      出口参数：CF＝0――打开成功，AX＝文件句柄，否则，AX＝错误号(02H、03H、04H、05H或0CH)，其含义见错误代码表<br>
<br>
(3)、功能3EH<br>
      功能描述：关闭指定句柄的文件<br>
      入口参数：AH＝3EH<br>
      BX＝文件句柄<br>
      出口参数：CF＝0――关闭成功，否则，AX＝错误号(06H)，其含义见错误代码表<br>
<br>
(4)、功能41H<br>
      功能描述：删除指定的文件<br>
      入口参数：AH＝41H<br>
      DS:DX＝文件名字符串的地址<br>
      出口参数：CF＝0――删除成功，否则，AX＝错误号(02H、03H或05H)，其含义见错误代码表<br>
<br>
(5)、功能43H<br>
      功能描述：读取或设置指定文件的属性<br>
      入口参数：AH＝43H<br>
      BX＝文件句柄<br>
      DS:DX＝文件名字符串的地址<br>
      AL＝00H/01H――读取/设置文件属性<br>
      CX＝文件属性： 位0=1――只读位1=1――隐含<br> 
            位2=1――系统位3=1――卷标号<br>
            位5=1――归档其它位保留不用，并置为0<br>
<br>
      出口参数：CF＝0――关闭成功，CX＝文件属性，否则，AX＝错误号(01H、02H、03H或05H)，其含义见错误代码表<br>
<br>
(6)、功能45H<br>
      功能描述：复制当前打开设备或文件的句柄，该句柄对应同样设备或文件的相同位置<br>
      入口参数：AH＝45H<br>
      BX＝待复制的文件句柄<br>
      出口参数：CF＝0――复制成功，AX＝新句柄，否则，AX＝错误号(04H或06H)，其含义见错误代码表<br>
<br>
(7)、功能46H<br>
      功能描述：指定二个句柄，把第二句柄指向第一个句柄，即第二个句柄被重定向<br>
      入口参数：AH＝46H<br>
      BX＝文件或设备的句柄<br>
      CX＝待重定向的文件句柄<br>
      出口参数：CF＝0――重定向成功，否则，AX＝错误号(04H或06H)，其含义见错误代码表<br>
<br>
(8)、功能4EH<br>
      功能描述：获取第一个与给定的文件名相匹配的文件<br>
      入口参数：AH＝4EH<br>
      DS:DX＝给定文件名的字符串<br>
      CX＝搜索时使用的文件属性： 位0=1――只读　　位1=1――隐含<br>
            位2=1――系统　　位3=1――卷标号<br>
            位4=1――目录　　位5=1――归档<br>
            其它位保留不用，并置为0<br>
<br>
      出口参数：CF＝1――操作失败，AX＝错误号(02H、03H或12H)，其含义见错误代码表，否则，操作成功，DTA(Disk Transfer&nbsp;<br>
      Area)按下列方式填入数据： 字节00~14H保留<br> 
            字节15H匹配的文件属性<br>
            字节16~17H压缩的文件名<br>
            字节18~19H压缩的文件日期<br>
            字节1A~1DH文件大小<br>
            字节1E~2AH文件名字符串<br>
<br>
<br>
(9)、功能4FH<br>
      功能描述：在中断21H的功能4EH成功使用之后，再搜索下一个文件名<br>
      入口参数：AH＝4FH<br>
      AL＝返回的代码<br>
      出口参数：CF＝1――操作失败，AX＝错误号(12H)，其含义见错误代码表，否则，操作成功，DTA中的数据如前面功能4EH所示<br>
<br>
(10)、功能56H<br>
      功能描述：文件换名<br>
      入口参数：AH＝56H<br>
      DS:DX＝当前文件名字符串地址<br>
      ES:DI＝新文件名字符串地址<br>
      出口参数：CF＝0――操作成功，否则，AX＝错误号(02H、03H、05H、11H)，其含义见错误代码表<br>
<br>
(11)、功能57H<br>
      功能描述：读取/设置文件的日期和时间<br>
      入口参数：AH＝57H<br>
      BX＝文件句柄 读取日期和时间AL＝00H<br> 
            设置日期和时间AL＝01H<br>
            CX＝时间(0F~0BH：小时，0AH~05H：分钟，04H~00H：2秒的个数)<br>
            DX＝日期(0F~09H：年(相对1980年)，08H~05H：月，04H~00H：日)<br>
<br>
      出口参数：CF＝1――操作失败，AX＝错误号(01H、06H)，其含义见错误代码表，否则，若是读文件信息，则，CX＝时间，DX＝日期<br>
<br>
(12)、功能5AH<br>
      功能描述：创建临时文件<br>
      入口参数：AH＝5AH<br>
      DS:DX＝路径名的地址<br>
      CX＝文件属性(位可组合)，其定义如下： 位0＝1　只读位3-4＝0　　保留<br>
            位1＝1　隐含位5＝1　 　归档<br>
            位2＝1　系统位6-15＝0　保留<br>
<br>
      出口参数：CF＝0――操作成功，AX＝文件句柄，DS:DX＝完整的路径文件地址，否则，AX＝错误号(03H、04H或05H)，其含义见错误代码表<br>
<br>
(13)、功能5BH<br>
      功能描述：创建新文件<br>
      入口参数：AH＝5BH<br>
      DS:DX＝路径名的地址<br>
      CX＝文件属性(位可组合)，其定义如下： 位0＝1只读位4＝0保留<br> 
            位1＝1隐含位5＝1归档<br>
            位2＝1系统位6-15＝0保留<br>
            位3＝1卷标号<br>
<br>
      出口参数：CF＝0――操作成功，AX＝文件句柄，否则，AX＝错误号(03H、04H、05H或50H)，其含义见错误代码表<br>
<br>
(14)、功能67H<br>
      功能描述：设置文件句柄数(最多文件数)<br>
      入口参数：AH＝67H<br>
      BX＝句柄的数量<br>
      出口参数：CF＝0――操作成功，否则，AX＝错误号，其含义见错误代码表<br>
<br>
(15)、功能6CH<br>
      功能描述：扩展的打开文件功能(打开、创建或替换文件)<br>
      入口参数：AH＝6CH<br>
      AL＝00H<br>
      DS:SI＝路径名的地址<br>
      BX＝打开方式 位2~0000―只读　　001―只写　　010―可读、写<br>
            位3保留(0)<br>
            位6~4000―兼容　　　001―拒绝读写　　010――拒绝写<br>
            011―拒绝读　　100――不拒绝任何操作<br>
            位70―子进程继承句柄，1―子进程不继承句柄<br>
            位12~8保留(0)<br>
            位13致命错误处理程序，0―执行INT 24H，否则，返回错误代码给进程<br> 
            位14写入方式：0―写入缓冲区，1―直接写入文件<br>
            位15保留(0)<br>
            CX＝文件属性<br>
                  位0＝1　只读位4＝0　　　保留<br>
                  位1＝1　隐含位5＝1　　　归档<br>
                  位2＝1　系统位6-15＝0　 保留<br> 
                  位3＝1　卷标签<br>
<br>
            DX＝打开标志 位3~0　　0―打开失败，1―打开文件，2―替换文件<br>
                  位7~4　　0―打开失败，1―创建文件<br>
                  位15~8　 0―保留<br> 
<br>
<br>
      出口参数：CF＝1――操作失败，AX＝错误号，其含义见错误代码表，否则，<br>
      AX＝文件句柄<br>
      CX＝1――文件存在，打开之<br>
　＝2――文件不存在，创建之<br>
<br>
5、文件操作功能(FCB)(File Operation Function)<br> 
      0FH ―打开文件16H ―创建文件<br> 
      10H ―关闭文件17H ―文件换名<br> 
      11H、12H ―查找第一个或下一个文件23H ―读取文件的大小<br> 
      13H ―删除文件29H ―分析文件名<br> 
<br>
(1)、功能0FH<br>
      功能描述：打开文件，并使之为顺序读/写作好准备<br>
      入口参数：AH＝0FH<br>
      DS:DX＝文件控制块的地址<br>
      出口参数：AL＝00H――打开成功，否则，AL＝FFH(如文件找不到)<br>
      在MS-DOS操作系统中，文件控制块的字段如下表所示。 字段名偏移量字段含义<br> 
            驱动器字00H1 for drive A, 2 for drive B,...<br> 
            当前块字段0CH00H<br>
            记录大小字段0EH0080H<br>
            文件长度字段10H文件字节数<br>
            日期字段14H日期<br>
            时间字段16H时间<br>
<br>
<br>
(2)、功能10H<br>
      功能描述：关闭文件<br>
      入口参数：AH＝10H<br>
      DS:DX＝文件控制块的地址<br>
      出口参数：AL＝00H――关闭成功，否则，AL＝FFH<br>
<br>
(3)、功能11H和12H<br>
      功能描述：查找第一个或下一个相匹配的文件<br>
      入口参数：AH＝11H――第一个相匹配的文件<br>
　 ＝12H――下一个相匹配的文件<br> 
      DS:DX＝文件控制块的地址<br>
      出口参数：AL＝00H――查找到，否则，AL＝FFH<br>
<br>
(4)、功能13H<br>
      功能描述：在指定(或缺省)的驱动器中，删除所有相匹配的文件<br>
      入口参数：AH＝13H<br>
      DS:DX＝文件控制块的地址<br>
      出口参数：AL＝00H――删除成功，否则，AL＝FFH<br>
<br>
(5)、功能16H<br>
      功能描述：在当前目录中创建一个文件，其文件长度为0，并打开该文件，为随后的读/写操作作好必要的准备<br>
      入口参数：AH＝16H<br>
      DS:DX＝未打开的文件控制块的地址<br>
      出口参数：AL＝00H――创建成功，否则，AL＝FFH(如：磁盘满)<br>
<br>
(6)、功能17H<br>
      功能描述：在指定的驱动器的当前目录中，把所有相匹配的文件换名<br>
      入口参数：AH＝17H<br>
      DS:DX＝指定文件控制块的地址<br>
      出口参数：AL＝00H――换名成功，否则，AL＝FFH<br>
<br>
(7)、功能23H<br>
      功能描述：在当前目录中查找一个相匹配的文件。如果发现，则用其记录数来更新其文件大小<br>
      入口参数：AH＝23H<br>
      DS:DX＝未打开的文件控制块的地址<br>
      出口参数：AL＝00H――匹配成功，FCB中偏移量为21H的字段被设置为其记录数，否则，AL＝0FFH<br>
<br>
(8)、功能29H<br>
      功能描述：分析一个字符串(文件名)置入FCB表中的不同字段<br>
      入口参数：AH＝29H<br>
      CX＝要写入的记录数<br>
      DS:SI＝字符串段的地址<br>
      ES:DI＝FCB的地址<br>
      AL＝分析的控制标志位 位3＝1――若字符串中有文件后缀，则FCB中的文件后缀将改变<br> 
            ＝0――若后缀忽略修改，或若分析后无后缀，则FCB中后缀字段被置为“空”<br>
            位2＝1――若字符串中有文件名，则FCB中的文件名将改变<br>
            ＝0――若文件名忽略修改，或若分析后无文件名，则FCB中文件名字段被置为“空”<br>
            位1＝1――若字符串中指定了驱动器号，则FCB中的ID字节被修改<br>
            ＝0――若ID字节忽略修改，或若分析后没有指定驱动器号，则FCB中驱动器字段被置为0(缺省值)<br>
            位0＝1――<br>
            ＝0――忽略前导分割符<br>
            不忽略前导分割符<br>
<br>
      出口参数：AL＝00H―没有通配字符 01H―有通配字符 FFH―驱动器号非法<br> 
      DS:SI＝分析后文件名第一个字符的地址<br>
      ES:DI＝格式化后的、未打开的FCB地址<br>
<br>
6、记录操作功能(Record Function)<br> 
      1AH ―设置数据传输区地址42H ―设置文件指针<br> 
      2FH ―读取数据传输区地址5CH ―文件区域加锁或解锁<br> 
      3FH ―读文件或设备68H ―提交文件缓冲区数据<br> 
      40H ―写文件或设备<br> 
<br>
(2)、功能2FH<br>
      功能描述：为FCB读／写操作而获取DTA的当前地址<br>
      入口参数：AH＝2FH<br>
      出口参数：ES:BX＝DTA的段地址和偏移量<br>
<br>
(3)、功能3FH<br>
      功能描述：从先前打开的文件中读出指定数目的字节，并移动文件指针<br>
      入口参数：AH＝3FH<br>
      BX＝文件句柄<br>
      CX＝将要读出的字节数<br>
      DS:DX＝存放字符的缓冲区地址<br>
      出口参数：CF＝0――读取成功，AX＝读取的字符数，否则，AX＝错误号(05H或06H)，其含义见错误代码表<br>
<br>
(4)、功能40H<br>
      功能描述：向先前打开的文件写入指定数量的字节，并相应修改文件指针<br>
      入口参数：AH＝40H<br>
      BX＝文件句柄<br>
      CX＝写入的字节数<br>
      DS:DX＝存放数据的缓冲区地址<br>
      出口参数：CF＝0――关闭成功，AX＝写入的字节数，否则，AX＝错误号(05H或06H)，其含义见错误代码表<br>
<br>
(5)、功能42H<br>
      功能描述：设置文件指针的相对位置(相对与文件头、文件尾和当前位置)<br>
      入口参数：AH＝42H<br>
      BX＝文件句柄<br>
      CX＝偏移量的高位<br>
      DX＝偏移量的低位<br>
      AL＝00H――从文件头开始的绝对偏移量<br>
　＝01H――从当前文件指针开始的偏移量(可带符号)<br>
　＝02H――从文件尾开始的偏移量(可带符号)<br>
      出口参数：CF＝0――设置成功，DX是指针的高位，AX是其低位，否则，AX＝错误号(01H和06H)，其含义见错误代码表。<br>
<br>
(6)、功能5CH<br>
      功能描述：文件区域加锁或解锁<br>
      入口参数：AH＝5CH<br>
      AL＝00H――区域加锁　　01H――区域解锁<br>
      BX＝文件句柄<br>
      CX:DX＝区域偏移量<br>
      SI:DI＝区域长度<br>
      DS:DX＝路径名的地址<br>
      出口参数：CF＝0――操作成功，否则，AX＝错误号(01H、06H、21H或24H)，其含义见错误代码表<br>
<br>
(7)、功能68H<br>
      功能描述：提交文件缓冲区数据<br>
      入口参数：AH＝68H<br>
      BX＝文件句柄<br>
      出口参数：CF＝0――操作成功，否则，AX＝错误号，其含义见错误代码表<br>
<br>
7、记录操作功能(FCB)(Record Function)<br> 
      14H ―顺序读24H ―设置相对记录数<br> 
      15H ―顺序写27H ―随机读块<br> 
      21H ―随机读28H ―随机写块<br> 
      22H ―随机写<br> 
<br>
(1)、功能14H<br>
      功能描述：从文件中读出下一个顺序块，并相应增加文件的指针<br>
      入口参数：AH＝14H<br>
      DS:DX＝先前打开文件控制块的地址<br>
      出口参数：AL＝00H――读取成功　　01H――文件尾<br>
　　02H――段缠绕　　　03H――部分记录在文件尾<br>
<br>
(2)、功能15H<br>
      功能描述：向文件写入下一个顺序数据块，并相应增加文件的指针<br>
      入口参数：AH＝15H<br>
      DS:DX＝先前打开文件控制块的地址<br>
      出口参数：AL＝00H――写入成功　　01H――磁盘满　　02H――段缠绕<br>
<br>
(3)、功能21H<br>
      功能描述：从文件中读出当前选定的记录<br>
      入口参数：AH＝21H<br>
      DS:DX＝先前打开文件控制块的地址<br>
      出口参数：AL＝00H――读取成功　　　01H――文件尾<br>
　　02H――取消读操作　　03H――部分记录在文件尾<br>
<br>
(4)、功能22H<br>
      功能描述：把内存中的数据写入在文件中当前选定的记录<br>
      入口参数：AH＝22H<br>
      DS:DX＝先前打开文件控制块的地址<br>
      出口参数：AL＝00H―写入成功　　01H―磁盘满　　02H―取消写操作<br>
<br>
(5)、功能24H<br>
      功能描述：设置FCB中相对记录数作为被打开FCB中的记录数<br>
      入口参数：AH＝24H<br>
      DS:DX＝先前打开文件控制块的地址<br>
      出口参数：AL的值被破坏，其它寄存器不受影响，FCB中偏移量21H单元被修改<br>
<br>
(6)、功能27H<br>
      功能描述：从文件中读出若干个记录到内存中<br>
      入口参数：AH＝27H<br>
      DS:DX＝先前打开文件控制块的地址<br>
      出口参数：AL＝00H――读取成功　　　01H――文件尾<br>
　　02H――取消读操作　　03H――部分记录在文件尾<br>
      CX＝实际读出的记录数<br>
<br>
(7)、功能28H<br>
      功能描述：从内存向文件中写入若干个记录<br>
      入口参数：AH＝28H<br>
      CX＝要写入的记录数<br>
      DS:DX＝先前打开文件控制块的地址<br>
      出口参数：AL＝00H――写入成功　　01H――磁盘满　　02H――段缠绕<br>
      CX＝实际写入的记录数<br>
<br>
8、内存分配功能(Memory-Allocation Function)<br> 
      48H ―分配内存块<br> 
      49H ―释放内存块<br> 
      4AH ―重定义内存块的大小<br> 
      58H ―读取/设置内存分配策略<br> 
<br>
(1)、功能48H<br>
      功能描述：分配一块内存单元，并返回该块内存单元的首地址<br>
      入口参数：AH＝48H<br>
      BX＝需要申请的内存单元字节数<br>
      出口参数：CF＝0――分配成功，AX＝存储单元的首地址，否则，AX＝错误号(07H或08H)，其含义见错误代码表，BX＝还可用的最大块数<br>
<br>
(2)、功能49H<br>
      功能描述：释放内存单元块以便为其它程序使用<br>
      入口参数：AH＝49H<br>
      ES＝被申请块的段地址<br>
      出口参数：CF＝0――释放成功，否则，AX＝错误号(07H或09H)，其含义见错误代码表<br>
<br>
(3)、功能4AH<br>
      功能描述：根据程序的需要，动态地改变一个内存块<br>
      入口参数：AH＝4AH<br>
      BX＝需要一个新存储块的大小<br>
      ES＝被修改块的段地址<br>
      出口参数：CF＝0――修改成功，否则，AX＝错误号(07H、08H或09H)，其含义见错误代码表，BX＝可用最大块的大小<br>
<br>
(4)、功能58H<br>
      功能描述：读取/设置内存分配策略<br>
      入口参数：AH＝58H 读取内存分配策略AL＝00H<br> 
            设置内存分配策略AL＝01H<br>
            BX＝内存分配策略代码：<br>
　　　00H―第一满足<br>
　　　01H―最好满足<br>
　　　02H―最后满足<br>
<br>
      出口参数：CF＝0――操作成功，AX＝已选用的内存分配策略代码(含义如上说明)，否则，AX＝错误号(01H)，其含义见错误代码表<br>
<br>
9、系统功能(System Function)<br> 
      25H ―设置中断向量<br> 
      30H ―读取MS-DOS版本号<br> 
      33H ―读取/设置Break标志<br> 
      34H ―读取InDOS标志的地址<br> 
      35H ―读取中断向量<br> 
      38H ―读取/设置国家信息<br> 
      44H ―IOCTL(I/O控制)<br> 
      50H ―设置程序段前缀(PSP)地址<br> 
      51H ―读取程序段前缀(PSP)地址<br> 
      59H ―读取扩展的错误信息<br> 
      5EH ―读取机器名，读取/设置打印机配置<br> 
      5FH ―设备重定向<br> 
      63H ―读取前导字节表<br> 
      65H ―读取扩展的国家信息<br> 
      66H ―读取/设置代码页<br> 
      5D0AH ―设置扩展的错误信息<br> 
<br>
(1)、功能25H<br>
      功能描述：设置中断向量表<br>
      入口参数：AH＝中断号<br>
      DS:DX＝中断处理程序的入口地址<br>
      出口参数：无<br>
<br>
(2)、功能30H<br>
      功能描述：取MS-DOS操作系统的版本号<br>
      入口参数：AH＝30H<br>
      出口参数：AL＝0――V 1.0；对其它高版本有：AL＝主要版本号<br> 
      AH＝次版本号(MS-DOS 3.1＝0AH，...)<br> 
      BH＝OEM的序列号(Original Equipment Manufacturer)<br> 
      BL:CX＝24位用户序列号<br>
<br>
(3)、功能33H<br>
      功能描述：获得或改变操作系统中断的状态。在功能调用期间，将影响^C的检测<br>
      入口参数：AH＝33H<br>
      AL＝00H――取状态<br>
　＝01H――设置状态，DL＝00/01表示置该状态OFF/ON<br>
      出口参数：取状态时，DL＝00/01――分别表示OFF/ON<br>
      说明：<br>
　1、若AL中存入其它的功能号，则返回时，AL的值为0FFH；<br>
　2、若置AL为5，则启动驱动器号返回在DL中(1-A，2-B，…)&nbsp;<br>
<br>
(4)、功能34H<br>
      功能描述：获得InDos标志的远地址，它由DOS维护表示DOS时活跃的<br>
      入口参数：AH＝34H<br>
      出口参数：ES:BX＝InDos标志的远地址<br>
      若该单元值为1，表示DOS功能在执行，否则，则不是。<br>
<br>
(5)、功能35H<br>
      功能描述：取指定中断号的入口地址<br>
      入口参数：AH＝35H<br>
      AL＝中断号<br>
      出口参数：ES:BX＝中断处理程序的入口地址<br>
<br>
(6)、功能38H<br>
      功能描述：读取或设置国家信息<br>
      入口参数：AH＝38H 当读取国家信息时<br> 
            DS:DX＝存放返回信息的地址<br>
            AL＝0――取当前国家信息<br>
            AL＝1~0FEH――取国家代码小于255的国家信息<br>
            AL＝0FFH――取代码大于等于255的国家信息，BX＝国家代码<br>
            设置国家信息时<br>
            DX＝0FFFFH<br>
            AL＝0~0FEH――设置国家代码小于255的国家信息<br>
            AL＝0FFH――置代码大于等于255的国家信息，BX＝国家代码<br>
<br>
      出口参数：CF＝0――调用成功，BX＝国家代码，否则。AX＝错误代码(02H)，其含义见错误代码表 说明国家信息如下所示：<br> 
            字节0-1H：日期格式：0―mdy、1―dmy、2―ymd<br>
            字节2-6H：货币字符<br>
            字节7-8H：数值千位分割符<br>
            字节9-0AH：数值精度分割符<br>
            字节0B-0CH：日期间隔符<br>
            字节0D-0EH：时间间隔符<br>
            字节0FH：货币格式<br>
            位0=0――货币符号在前，否则，货币符号在后<br>
            位1=0――货币符号和数据之间无空格，否则，二者之间有一个空格<br>
            位2=0――货币符号和小数点分开，否则，货币符号代替小数点<br>
            字节10H：货币的小数位数<br>
            字节11H：时间格式。位0=0―12小时制，否则，24小时制<br>
            字节12~15H：Case-Map调用地址<br>
            字节16~17H：字符串分割符<br>
            字节18~21H：保留<br>
<br>
<br>
(7)、功能44H<br>
      功能描述：输入/输出控制，其子功能描述：<br>
　00H―取设备信息01H―取设备信息<br>
　02H―从字符设备驱动器接受控制数据03H―发送控制数据到字符设备驱动器<br>
　04H―从块设备驱动器接受控制数据    05H―发送控制数据到块设备驱动器<br> 
　06H―检查输入状态07H―检查输出状态<br>
　08H―检查块设备是否为可拆卸设备09H―检查设备是否为远程设备<br>
　0AH―检查句柄是否为远程对象0BH―改变共享访问入口数<br>
　0CH―字符设备的一般I/O控制信息0DH―块设备的一般I/O控制信息<br>
　0EH―读取逻辑驱动器映射关系0FH―设置逻辑驱动器映射关系<br>
            说明：输入/输出子功能中的00H、06H和07H仅针对文件句柄，子功能00H~ 08H不支持网络设备。<br> 
<br>
<br>
(8)、功能50H<br>
      功能描述：设置程序段前缀(PSP)地址<br>
      入口参数：AH＝50H<br>
      BX＝新的PSP地址<br>
      出口参数：无<br>
<br>
(9)、功能51H<br>
      功能描述：读取程序段前缀(PSP)地址<br>
      入口参数：AH＝51H<br>
      出口参数：BX＝PSP地址<br>
<br>
(10)、功能59H<br>
      功能描述：读取扩展的错误信息<br>
      入口参数：AH＝59H<br>
      BX＝00H<br>
      出口参数：AX＝扩展的错误代码，其含义见错误代码表<br>
      BH＝错误类型，其定义如下： 01h―资源短缺02h―处于临时状态而非错误<br> 
            03h―权限问题04h―系统软件内部错误<br>
            05h―硬件失败06h―系统软件失败，但不是活跃进程失败<br>
            07h―应用程序错08h―文件或数据项未发现<br>
            09h―文件或数据项类型或格式错0Ah―文件或数据项相互加锁<br>
            0Bh―驱动器中坏磁盘，磁盘中坏区域或存储问题<br>
            0Ch―其它错误<br>
<br>
      BL＝建议采用的措施，其定义如下：<br>
　01h ― 重试若干次后，再选"终止"或"忽略"<br> 
　02h ― 重试若干次(二次之间要等待)后，再选"终止"或"忽略"<br> 
　03h ― 从用户获取正确的信息<br> 
　04h ― 终止应用程序，并清除其所使用资源<br> 
　05h ― 立即终止程序，但没有清除其资源<br> 
　06h ― 忽略错误<br> 
　07h ― 消除错误原因，再重试<br> 
      CH＝错误地点，其定义如下：<br>
　01h ― 不知道<br> 
　02h ― 块设备(磁盘或磁盘模拟器)<br> 
　03h ― 网络<br> 
　04h ― 串行设备<br> 
　05h ― 内存<br> 
      ES:DI＝插入磁盘标签的字符串，若AX＝0022h(非法改变磁盘)<br>
<br>
(11)、功能5EH<br>
      功能描述：读取机器名，读取/设置打印机配置 子功能号功能描述<br> 
            00h读取机器名<br>
            02h设置打印机安装字符串<br>
            03h读取打印机安装字符串<br>
<br>
      ①、子功能1<br>
      入口参数：AH＝5EH<br>
      AL＝00H<br>
      DS:DX＝接受字符串缓冲区的地址<br>
      出口参数：CF＝1――操作失败，AX＝错误号(01H)，其含义见错误代码表，否则，<br>
      CH＝00H――机器名未定义，否则，机器名已定义<br>
      CL＝NetBIOS名称号(当CH≠00H时)<br>
      DS:DX＝标识符地址(当CH≠00H时)<br>
      ②、子功能2<br>
      入口参数：AH＝5EH<br>
      AL＝02H<br>
      BX＝重定向列表索引<br>
      CX＝安装字符串的长度<br>
      DS:SI＝安装字符串的地址<br>
      出口参数：CF＝0――操作成功，否则，AX＝错误号(01H)，其含义见错误代码表<br>
      ③、子功能3<br>
      入口参数：AH＝5EH<br>
      AL＝03H<br>
      BX＝重定向列表索引<br>
      ES:DI＝接受字符串缓冲区的地址<br>
      出口参数：CF＝0――操作成功，CX＝接受字符串的长度，否则，AX＝错误号(01H)，其含义见错误代码表<br>
<br>
(12)、功能5FH<br>
      功能描述：设备重定向 子功能号功能描述<br> 
            02h读取重定向列表索引<br>
            03h重定向设备<br>
<br>
      ①、子功能1<br>
      入口参数：AH＝5FH<br>
      AL＝02H<br>
      BX＝重定向列表索引<br>
      DS:SI＝接受本地设备名的16字节存储区地址<br>
      ES:DI＝接受网络名的128字节存储区地址<br>
      出口参数：CF＝1――操作失败，AX＝错误号(01H或12H)，其含义见错误代码表，否则，BH位0＝0H――设备合法，否则，设备非法<br>
      BL＝设备类型――03H：打印机，04H：驱动器<br>
      CX＝存储参数值<br>
      DX＝被破坏<br>
      BP＝被破坏<br>
      DS:SI＝存放本地设备名的地址<br>
      ES:DI＝存放网络名的地址<br>
      ②、子功能2<br>
      入口参数：AH＝5FH<br>
      AL＝03H<br>
      BL＝设备类型――03H：打印机，04H：驱动器<br>
      CX＝调用者保存的参数<br>
      DS:SI＝本地设备名的16字节存储区地址<br>
      ES:DI＝网络名的128字节存储区地址，紧跟其后是密码<br>
      出口参数：CF＝0――操作成功，否则，AX＝错误号(01H、03H、05H、08H、0FH或12H)，其含义见错误代码表<br>
<br>
(13)、功能63H<br>
      功能描述：读取前导字节表<br>
      入口参数：AH＝63H AL＝子功能<br> 
            ＝00H―读取系统前导字节表地址<br>
            ＝01H―设置/清除临时控制台标志(DL＝00H/01H―清除/设置标志)<br>
            ＝02H―读取临时控制台标志值<br>
<br>
      出口参数：BX＝1――操作失败，AX＝错误号(01H)，其含义见错误代码表，否则，调用时，<br>
　　　若AL＝00H，则，DS:SI＝系统前导字节表地址；<br>
　　　若AL＝02H，则，DL＝临时控制台标志值&nbsp;<br>
<br>
(14)、功能65H<br>
      功能描述：读取扩展的国家信息<br>
      入口参数：AH＝65H<br>
      BX＝代码页(-1＝活跃的CON设备)<br>
      CX＝接受信息的缓冲区大小<br>
      DX＝国家标识(-1＝缺省)<br>
      ES:DI＝接受信息的缓冲区地址 AL＝子功能<br> 
            ＝01H――读取一般的国家信息<br>
            ＝02H――读取指向大写字母表的指针<br>
            ＝04H――读取指向文件名大写字母表的指针<br>
            ＝06H――读取指向校对表的指针<br>
            ＝07H――读取指向DBCS向量的指针<br>
<br>
      出口参数：CF＝0――操作成功，需要的数据存入调用的缓冲区，否则，AX＝错误号(02H)，其含义见错误代码表<br>
<br>
(15)、功能66H<br>
      功能描述：读取/设置代码页<br>
      入口参数：AH＝66H<br>
      AL＝子功能号：01H――读取代码页，02H――选择代码页<br>
      BX＝选择的代码页(当AL＝02H)<br>
      出口参数：CF＝0――操作成功，当调用子功能01H时，BX＝活跃的代码页，DX＝缺省的代码页，否则，AX＝错误号(02H或65H)，其含义见错误代码表<br>
<br>
(16)、功能5D0AH<br>
      功能描述：设置扩展的错误信息<br>
      入口参数：AX＝5D0AH<br>
      DS:DX＝扩展错误结构的地址，该结构的说明如下： EXTEND_ERR STRUCT<br> 
            RAx　WORD　?　;AX<br>
            RBx　WORD　?　;BX<br>
            RCx　WORD　?　; CX<br> 
            RDx　WORD　?　; DX<br> 
            RSi　WORD　?　; SI<br> 
            RDi　WORD　?　; DI<br> 
            RDs　WORD　?　; DS<br> 
            REs　WORD　?　; ES<br> 
            Pad　WORD　3 DUP(0)<br> 
            EXTEND_ERRENDS<br>
<br>
      出口参数：无<br>
<br>
10、进程控制功能(Process-Control Function)<br> 
      00H ―终止进程<br> 
      26H ―创建新的程序段前缀(PSP)<br> 
      31H ―终止并驻留<br> 
      4BH ―执行程序(EXEC)<br> 
      4CH ―带返回码方式的终止进程<br> 
      4DH ―读取返回代码<br> 
      62H ―读取PSP地址<br> 
<br>
(1)、功能00H<br>
      功能描述：终止进程。这是程序可以使用的终止进程的方法之一<br>
      入口参数：AH＝00H<br>
      CS＝代码段地址<br>
      出口参数：无<br>
<br>
(2)、功能26H<br>
      功能描述：把当前正在执行程序的程序段前缀(PSP)拷贝到内存中的指定地址中，并可改变其为其它程序所使用<br>
      入口参数：AH＝26H<br>
      DX＝新程序段前缀的段地址<br>
      出口参数：无<br>
<br>
(3)、功能31H<br>
      功能描述：终止程序的运行，传递一个返回代码给其父进程，但该程序部分或全部驻留在内存中<br>
      入口参数：AH＝31H<br>
      AL＝返回代码号<br>
      DX＝驻留在内存中的字节数<br>
      出口参数：无<br>
<br>
(4)、功能4BH<br>
      功能描述：执行程序(EXEC)<br>
      入口参数：AH＝4BH<br>
      ES:BX＝参数块的地址<br>
      DS:DX＝程序的入口地址<br>
      AL＝00H――装入并执行程序，03H――以覆盖的形式装入<br>
      出口参数：CF＝0――操作成功，除CS和IP之外，其它寄存器的值都被破坏，否则，AX＝错误号(01H、02H、03H、05H、08H、0AH或0BH)，其含义见错误代码表<br>
<br>
(5)、功能4CH<br>
      功能描述：终止程序的执行，并可返回一个代码<br>
      入口参数：AH＝4CH<br>
      AL＝返回的代码<br>
      出口参数：无<br>
<br>
(6)、功能4DH<br>
      功能描述：父进程获取子进程的返回代码<br>
      入口参数：AH＝4DH<br>
      出口参数：AH＝00H――用中断20H、中断21H的功能0或4C正常终止<br>
　 ＝01H――用户按^C终止<br> 
　 ＝02H――因致命错误而终止<br> 
　 ＝03H――用中断21H的功能31H，或中断27H终止<br> 
      AL＝子进程的返回码：00H――子进程由中断20H、中断21H的功能0或4C终止<br>
<br>
(7)、功能62H<br>
      功能描述：读取PSP地址<br>
      入口参数：AH＝62H<br>
      出口参数：BX＝PSP的偏移量<br>
<br>
11、时间和日期功能(Time and Date Function)<br> 
      2AH ―读取日期<br> 
      2BH ―设置日期<br> 
      2CH ―读取时间<br> 
      2DH ―设置时间<br> 
<br>
(1)、功能2AH<br>
      功能描述：取系统日期<br>
      入口参数：AH＝2AH<br>
      出口参数：CX＝年(1980~2099)，DH＝月(1~12)，DL＝日(1~31)<br>
      AL＝星期几(0＝Sunday，1＝Monday，...)<br>
<br>
(2)、功能2BH<br>
      功能描述：置系统日期<br>
      入口参数：AH＝2BH<br>
      CX＝年(1980~2099)，DH＝月(1~12)，DL＝日(1~31)<br>
      出口参数：AL＝00H――设置成功，0FFH――设置失败<br>
<br>
(3)、功能2CH<br>
      功能描述：取系统时间<br>
      入口参数：AH＝2CH<br>
      出口参数：CH＝时(0~23)，CL＝分(0~59)，DL＝秒(0~59)，AL＝百分秒(0~99)<br>
<br>
(4)、功能2DH<br>
      功能描述：置系统时间<br>
      入口参数：AH＝2DH<br>
      CH＝时(0~23)，CL＝分(0~59)，DL＝秒(0~59)，AL＝百分秒(0~99)<br>
      出口参数：出口参数：AL＝00H――设置成功，0FFH――设置失败<br>
<br>
2、鼠标功能中断INT 33H<br> 
      00H ―初始化鼠标<br> 
      01H ―显示鼠标指针<br> 
      02H ―隐藏鼠标指针<br> 
      03H ―读取鼠标位置及其按钮状态<br> 
      04H ―设置鼠标指针位置<br> 
      05H ―读取鼠标按键信息<br> 
      06H ―读取鼠标按钮释放信息<br> 
      07H ―设置鼠标水平边界<br> 
      08H ―设置鼠标垂直边界<br> 
      09H ―设置图形鼠标形状<br> 
      0AH ―设置本文鼠标形状<br> 
      0BH ―读取鼠标移动计数<br> 
      0CH ―为鼠标事件设置处理程序<br> 
      0DH ―允许光笔仿真<br> 
      0EH ―关闭光笔仿真<br> 
      0FH ―设置鼠标计数与象素比<br> 
      10H ―设置鼠标指针隐藏区域<br> 
      13H ―设置倍速的阈值&nbsp;<br>
      14H ―替换鼠标事件中断<br> 
      15H ―读取鼠标驱动器状态的缓冲区大小<br> 
      16H ―存储鼠标驱动器状态<br> 
      17H ―重装鼠标驱动器状态<br> 
      18H ―为鼠标事件设置替换处理程序<br> 
      19H ―读取替换处理程序的地址<br> 
      1AH ―设置鼠标的灵敏度<br> 
      1BH ―读取鼠标的灵敏度<br> 
      1CH ―设置鼠标中断速率<br> 
      1DH ―为鼠标指针选择显示页<br> 
      1EH ―读取鼠标指针的显示页<br> 
      1FH ―禁止鼠标驱动程序<br> 
      20H ―启动鼠标驱动程序<br> 
      21H ―鼠标驱动程序复位<br> 
      22H ―设置鼠标驱动程序信息语言<br> 
      23H ―读取语种<br> 
      24H ―读取鼠标信息<br> 
      25H ―读取鼠标驱动程序信息<br> 
      26H ―读取最大有效坐标<br> 
<br>
(1)、功能00H<br>
      功能描述：初始化鼠标，该操作只需要执行一次<br>
      入口参数：AX＝00H<br>
      出口参数：AX＝0000H――不支持鼠标功能，FFFFH――支持鼠标功能<br>
      BX＝鼠标按钮个数(在支持鼠标功能时)<br>
      在支持鼠标功能的情况下，鼠标还被设置如下参数： 1、鼠标指针放在屏幕中央<br> 
            2、如果当前鼠标指针是显示的，则操作后，鼠标指针被隐藏<br>
            3、鼠标指针的显示页为0<br>
            4、根据屏幕的显示模式显示鼠标指针：文本―反向显示矩形块，图形―尖头形状<br>
            5、水平象素比＝8:8，垂直象素比＝16:8<br>
            6、设置水平和垂直的显示边界为当前显示模式的最大边界<br>
            7、允许光笔仿真<br>
            8、双速门槛值＝64<br>
<br>
<br>
(2)、功能01H<br>
      功能描述：显示鼠标指针，通常在鼠标初始化后，用此功能显示其指针<br>
      入口参数：AX＝01H<br>
      出口参数：无<br>
<br>
(3)、功能02H<br>
      功能描述：隐藏鼠标指针，一般在程序结束时，调用此功能<br>
      入口参数：AX＝02H<br>
      出口参数：无<br>
<br>
(4)、功能03H<br>
      功能描述：读取鼠标位置及其按钮状态<br>
      入口参数：AX＝03H<br>
      出口参数：BX＝按键状态：位0=1――按下左键<br>
            位1=1――按下右键<br>
            位2=1――按下中键<br>
            其它位――保留，内部使用<br>
            CX＝水平位置<br>
            DX＝垂直位置<br>
<br>
<br>
(5)、功能04H<br>
      功能描述：设置鼠标指针位置<br>
      入口参数：AX＝04H，CX＝水平位置，DX＝垂直位置<br>
      出口参数：无<br>
<br>
(6)、功能05H<br>
      功能描述：读取鼠标按键信息<br>
      入口参数：AX＝05H，BX＝指定的按键：0―左键，1―右键，2―中键<br>
      出口参数：AX＝按键状态，参见功能3H中BX的说明<br>
      BX＝按键次数<br>
      CX＝水平位置(最后按键时)<br>
      DX＝垂直位置(最后按键时)<br>
<br>
(7)、功能06H<br>
      功能描述：读取鼠标按钮释放信息<br>
      入口参数：AX＝06H，BX＝指定的按键：0―左键，1―右键，2―中键<br>
      出口参数：AX＝按键状态，参见功能3H中BX的说明<br>
      BX＝释放的次数<br>
      CX＝水平位置(最后释放时)<br>
      DX＝垂直位置(最后释放时)<br>
<br>
(8)、功能07H<br>
      功能描述：设置鼠标水平边界<br>
      入口参数：AX＝07H<br>
      CX＝最小水平位置<br>
      DX＝最大水平位置<br>
      出口参数：无，鼠标有可能因新区域变小而自动移进新区域内<br>
<br>
(9)、功能08H<br>
      功能描述：设置鼠标垂直边界<br>
      入口参数：AX＝08H<br>
      CX＝最小垂直位置<br>
      DX＝最大垂直位置<br>
      出口参数：无，鼠标有可能因新区域变小而自动移进新区域内<br>
<br>
(10)、功能09H<br>
      功能描述：设置图形鼠标形状<br>
      入口参数：AX＝09H<br>
      BX＝指针的水平位置<br>
      CX＝指针的垂直位置<br>
      ES:DX＝16×16位光标的映象地址 参数说明：(BX，CX)是鼠标的指针在16×16点阵中的位置，(0,0)是左上角；<br> 
            ES:DX指向的存储单元内存放16×16点阵的位映象隐码，紧跟其后的是16×16点阵的光标掩码。<br>
            鼠标指针的显示方法：位映象隐码“逻辑与”上屏幕显示区的内容，然后再用光标掩码内容“异或”前面运算的结果。<br>
<br>
      出口参数：无<br>
<br>
(11)、功能0AH<br>
      功能描述：设置本文鼠标形状<br>
      入口参数：AX＝0AH<br>
      BX＝光标类型： 0 ―CX和DX的各位含义如下： 位7~0鼠标指针符号<br> 
                  位10~8字符前景色<br>
                  位11亮度<br>
                  位14~12字符背景色<br>
                  位15闪烁<br>
<br>
            1 ―CX＝光标的起始扫描线<br> 
            DX＝光标的结束扫描线<br>
<br>
      出口参数：无<br>
<br>
(12)、功能0BH<br>
      功能描述：读取鼠标移动计数<br>
      入口参数：AX＝0BH<br>
      出口参数：CX＝水平移动距离：正数――向右移，负数――向左移<br>
      DX＝垂直移动距离：正数――向下移，负数――向上移<br>
<br>
(13)、功能0CH<br>
      功能描述：为鼠标事件设置处理程序<br>
      入口参数：AX＝0CH<br>
      CX＝中断掩码 位0＝1――鼠标指针位置发送变化<br> 
            位1＝1――按下左按钮<br>
            位2＝1――释放左按钮<br>
            位3＝1――按下右按钮<br>
            位4＝1――释放右按钮<br>
            位5＝1――按下中间按钮<br>
            位6＝1――释放中间按钮<br>
            位7~15＝0――保留<br>
<br>
      ES:DX＝中断处理程序的地址<br>
      在进入中断处理程序时，有关寄存器的值含义：<br>
　　AX＝中断掩码<br>
　　BX＝按键状态<br>
　　CX＝鼠标指针的水平位置<br>
　　DX＝鼠标指针的垂直位置<br>
　　SI＝水平位置的变化量<br>
　　DI＝垂直位置的变化量<br>
      出口参数：无<br>
<br>
(14)、功能0DH<br>
      功能描述：允许光笔仿真<br>
      入口参数：AX＝0DH<br>
      出口参数：无<br>
<br>
(15)、功能0EH<br>
      功能描述：关闭光笔仿真<br>
      入口参数：AX＝0EH<br>
      出口参数：无<br>
<br>
(16)、功能0FH<br>
      功能描述：设置鼠标计数与象素比<br>
      入口参数：AX＝0FH<br>
      CX＝水平比例<br>
      DX＝垂直比例<br>
      出口参数：无<br>
<br>
(17)、功能10H<br>
      功能描述：设置鼠标指针隐藏区域<br>
      入口参数：AX＝10H<br>
      CX＝左上角X坐标<br>
      DX＝左上角Y坐标<br>
      SI＝右下角X坐标<br>
      DI＝右下角Y坐标<br>
      出口参数：无<br>
<br>
(18)、功能13H<br>
      功能描述：设置倍速的阈值，其缺省值为64<br>
      入口参数：AX＝13H<br>
      DX＝阀值<br>
      出口参数：无<br>
<br>
(19)、功能14H<br>
      功能描述：替换鼠标事件中断<br>
      入口参数：AX＝14H<br>
      CX＝中断掩码<br>
      ES:DX＝中断处理程序的地址<br>
      出口参数：CX＝旧的中断掩码<br>
      ES:DX＝旧的中断处理程序地址<br>
<br>
(20)、功能15H<br>
      功能描述：读取鼠标驱动器状态的缓冲区大小<br>
      入口参数：AX＝15H<br>
      出口参数：BX＝存放鼠标驱动器状态所需缓冲区的大小<br>
<br>
(21)、功能16H<br>
      功能描述：存储鼠标驱动器状态<br>
      入口参数：AX＝16H<br>
      ES:DX＝存储鼠标驱动器状态的地址<br>
      出口参数：无<br>
<br>
(22)、功能17H<br>
      功能描述：重装鼠标驱动器状态<br>
      入口参数：AX＝17H<br>
      ES:DX＝鼠标驱动器状态的地址<br>
      出口参数：无<br>
<br>
(23)、功能18H<br>
      功能描述：为鼠标事件设置可选的处理程序<br>
      入口参数：AX＝18H<br>
      CX＝替换中断掩码<br>
      ES:DX＝替换中断处理程序的地址<br>
      CF＝0<br>
      出口参数：无<br>
<br>
(24)、功能19H<br>
      功能描述：读取替换处理程序的地址<br>
      入口参数：AX＝19H<br>
      CX＝替换中断掩码<br>
      出口参数：若AX＝-1――不成功，否则，ES:DX＝中断处理程序的地址<br>
<br>
(25)、功能1AH<br>
      功能描述：设置鼠标的灵敏度，其取值1~100<br>
      入口参数：AX＝1AH<br>
      BX＝水平灵敏度(每8个象素鼠标需要移动的数量，一般为8)<br>
      CX＝垂直灵敏度(每8个象素鼠标需要移动的数量，一般为16)<br>
      DX＝倍速阀值<br>
      出口参数：无<br>
<br>
(26)、功能1BH<br>
      功能描述：读取鼠标的灵敏度<br>
      入口参数：AX＝1BH<br>
      出口参数：BX＝水平灵敏度<br>
      CX＝垂直灵敏度<br>
      DX＝倍速阀值<br>
<br>
(27)、功能1CH<br>
      功能描述：设置鼠标中断速率<br>
      入口参数：AX＝1CH<br>
      BX＝每秒钟中断的次数：0―关中断，1―30/S，2―50/S，3―100/S，4―200/S<br>
      出口参数：无<br>
<br>
(28)、功能1DH<br>
      功能描述：为鼠标指针选择显示页<br>
      入口参数：AX＝1DH<br>
      BX＝显示页<br>
      出口参数：无<br>
<br>
(29)、功能1EH<br>
      功能描述：读取鼠标指针的显示页<br>
      入口参数：AX＝1EH<br>
      出口参数：BX＝显示页<br>
<br>
(30)、功能1FH<br>
      功能描述：禁止鼠标驱动程序<br>
      入口参数：AX＝1FH<br>
      出口参数：若AX＝-1――不成功，否则，ES:BX＝鼠标驱动程序的地址<br>
<br>
(31)、功能20H<br>
      功能描述：启动鼠标驱动程序<br>
      入口参数：AX＝20H<br>
      出口参数：无<br>
<br>
(32)、功能21H<br>
      功能描述：鼠标驱动程序复位<br>
      入口参数：AX＝21H<br>
      出口参数：若AX＝-1――不成功，否则，BX＝2<br>
<br>
(33)、功能22H<br>
      功能描述：设置鼠标驱动程序信息语言<br>
      入口参数：AX＝22H<br>
      BX＝语言代码：0―英语，1―法语，2―荷兰语，3―德语，4―瑞典语，5―芬兰语，6―西班牙语，7―葡萄牙语，8―意大利语<br>
      出口参数：无<br>
<br>
(34)、功能23H<br>
      功能描述：读取语种<br>
      入口参数：AX＝23H<br>
      出口参数：BX＝语言代码<br>
<br>
(35)、功能24H<br>
      功能描述：读取鼠标信息<br>
      入口参数：AX＝24H<br>
      出口参数：BH＝主版本号，BL＝辅版本号<br>
      CL＝中断请求号<br>
      CH＝鼠标类型：1－Bus Mouse，2－Serial Mouse，3－InPort Mouse，4－PS/2 Mouse，5－HP Mouse<br> 
<br>
(36)、功能25H<br>
      功能描述：读取鼠标驱动程序信息<br>
      入口参数：AX＝25H<br>
      出口参数： AX＝鼠标驱动程序信息： 位15 ――0：驱动程序是.SYS文件，否则，为.COM文件<br> 
            位14――0：不完全鼠标显示驱动程序，否则，为完全的<br>
            位13-12――00：软件文本光标<br>
            01：硬件文本光标<br>
            1X：图形光标<br>
<br>
<br>
(37)、功能26H<br>
      功能描述：读取最大有效坐标<br>
      入口参数：AX＝26H<br>
      出口参数：BX＝鼠标驱动程序状态<br>
      CX＝最大水平坐标<br>
      DX＝最大垂直坐标<br>
<br>
3、其它DOS中断<br>
      INT 20H ―终止程序运行<br> 
      INT 22H ―终止处理程序的地址<br> 
      INT 23H ―Ctrl+C处理程序<br> 
      INT 24H ―致命错误处理程序<br> 
      INT 25H ―读磁盘扇区(忽略逻辑结构)<br> 
      INT 26H ―写磁盘扇区(忽略逻辑结构)<br> 
      INT 27H ―终止，并驻留在内存<br> 
      INT 28H ―DOS空闲<br> 
      INT 2FH ―多重中断服务<br> 
<br>
(1)、中断INT 20H<br> 
      功能描述：终止当前正在运行的程序，它是几种终止程序运行方法之一<br>
      入口参数：CS＝PSP的段地址<br>
      出口参数：无<br>
<br>
(2)、中断INT 22H<br> 
      功能描述：终止处理程序的地址，该地址在程序装入内存运行前被放入PSP的0AH~0DH的单元内。该中断指令从不直接书写在程序之中<br>
<br>
(3)、中断INT 23H<br> 
      功能描述：Ctrl+C处理程序。该中断指令从不直接书写在程序之中<br>
<br>
(4)、中断INT 24H<br> 
      功能描述：致命错误处理程序。该中断指令从不直接书写在程序之中<br>
<br>
(5)、中断INT 25H<br> 
      功能描述：绝对读磁盘，直接从逻辑设备中读出数据到内存单元中<br>
      入口参数：AL＝驱动器号(0=A、1=B、……) 分区容量≤32M，有：CX＝读出的扇区数<br> 
            DX＝起始扇区数<br>
            DS:BX＝存放数据缓冲区的地址<br>
            否则，有：CX＝-1<br>
            DS:BX＝参数块缓冲区的地址，该参数块的结构如下： 字节描述<br> 
                  00~03H32位扇区数<br>
                  04~05H 将被读出的扇区数<br> 
                  06~07H存放数据的缓冲区的偏移量<br>
                  08~09H存放数据的缓冲区的段地址<br>
<br>
<br>
      出口参数：CF＝0――操作成功，否则，AX＝错误号，其含义见下错误代码表 错误代码错误含义<br> 
            80H附件响应失败<br>
            40H定位操作失败<br>
            20H设备控制器失败<br>
            10H数据错(错误的CRC)<br>
            08H DMA失败<br> 
            04H需要的扇区未发现<br>
            02H错误的地址标志<br>
            01H错误命令<br>
<br>
<br>
(6)、INT 26H<br> 
      功能描述：绝对写磁盘，直接把内存单元中的内容写入逻辑设备<br>
      入口参数：与前面的INT 25H相一致<br> 
      出口参数：与前面的INT 25H相一致<br> 
<br>
(7)、INT 27H<br> 
      功能描述：终止，并驻留在内存<br>
      入口参数：CS＝PSP的段值<br>
      DX＝被保护程序最后一个字节的偏移量再加1<br>
      出口参数：无<br>
<br>
(8)、INT 28H<br> 
      功能描述：DOS空闲中断<br>
      入口参数：无<br>
      出口参数：无<br>
<br>
(9)、INT 2FH<br> 
      功能描述：多重中断服务，允许多个驻留程序通过单个中断与其它进程通信。<br>
      入口参数：AH＝标识号，AL＝功能号，功能号及其含义如下： 功能号功能描述<br> 
            01H假脱机打印<br>
            06H驻留ASSIGN命令<br>
            10H驻留SHARE命令<br>
            B7H驻留APPEND命令<br>
<br>
      出口参数：若入口AL为0，则出口AL＝0FFH，否则，其值取决于处理程序<br>
<br>
BIOS中断:<br>
1、显示服务(Video Service――INT 10H)&nbsp;<br>
      00H ―设置显示器模式0CH ―写图形象素<br> 
      01H ―设置光标形状0DH ―读图形象素<br> 
      02H ―设置光标位置0EH ―在Teletype模式下显示字符<br> 
      03H ―读取光标信息0FH ―读取显示器模式<br> 
      04H ―读取光笔位置10H ―颜色<br> 
      05H ―设置显示页11H ―字体<br> 
      06H、07H ―初始化或滚屏12H ―显示器的配置<br> 
      08H ―读光标处的字符及其属性13H ―在Teletype模式下显示字符串<br> 
      09H ―在光标处按指定属性显示字符1AH ―读取/设置显示组合编码<br> 
      0AH ―在当前光标处显示字符1BH ―读取功能/状态信息<br> 
      0BH ―设置调色板、背景色或边框1CH ―保存/恢复显示器状态<br> 
(1)、功能00H<br>
      功能描述：设置显示器模式<br>
      入口参数：AH＝00H<br>
      AL＝显示器模式，见下表所示<br>
      出口参数：无<br>
<br>
可用的显示模式如下所列：&nbsp;<br>
      显示模式显示模式属性显示模式显示模式属性<br>
      00H40×2516色 文本01H40×2516色 文本<br> 
      02H80×2516色 文本03H80×2516色 文本<br> 
      04H320×2004色05H320×2004色<br>
      06H640×2002色07H80×252色 文本<br> 
      08H160×20016色09H320×20016色<br>
      0AH640×2004色0BH保留　<br>
      0CH保留0DH320×20016色<br>
      0EH640×20016色0FH640×3502(单色)<br>
      10H640×3504色10H640×35016色<br>
      11H640×4802色12H640×48016色<br>
      13H640×480256色<br>
<br>
对于超级VGA显示卡，我们可用AX＝4F02H和下列BX的值来设置其显示模式。&nbsp;<br>
      BX显示模式属性BX显示模式属性<br>
      100H640×400256色101H640×480256色<br>
      102H800×60016色103H800×600256色<br>
      104H1024×76816色105H1024×768256色<br>
      106H1280×102416色107H1280×1024256色<br>
      108H80×60文本模式109H132×25文本模式<br>
      10AH132×43文本模式10BH132×50文本模式<br>
      10CH132×60文本模式<br>
<br>
(2)、功能01H&nbsp;<br>
      功能描述：设置光标形状<br>
      入口参数：AH＝01H<br>
      CH低四位＝光标的起始行<br>
      CL低四位＝光标的终止行<br>
      出口参数：无<br>
<br>
(3)、功能02H&nbsp;<br>
      功能描述：用文本坐标下设置光标位置<br>
      入口参数：AH＝02H<br>
      BH＝显示页码<br>
      DH＝行(Y坐标)<br>
      DL＝列(X坐标)<br>
      出口参数：无<br>
<br>
(4)、功能03H&nbsp;<br>
      功能描述：在文本坐标下，读取光标各种信息<br>
      入口参数：AH＝03H<br>
      BH＝显示页码<br>
      出口参数：CH＝光标的起始行<br>
      CL＝光标的终止行<br>
      DH＝行(Y坐标)<br>
      DL＝列(X坐标)<br>
<br>
(5)、功能04H&nbsp;<br>
      功能描述：获取当前状态和光笔位置<br>
      入口参数：AH＝04H<br>
      出口参数：AH＝00h――光笔未按下/未触发，01h――光笔已按下/已触发<br>
      BX＝象素列(图形X坐标)<br>
      CH＝象素行(图形Y坐标，显示模式：04H~06H)<br>
      CX＝象素行(图形Y坐标，显示模式：0DH~10H)<br>
      DH＝字符行(文本Y坐标)<br>
      DL＝字符列(文本X坐标)<br>
<br>
(6)、功能05H&nbsp;<br>
      功能描述：设置显示页，即选择活动的显示页<br>
      入口参数：AH＝05H<br>
      AL＝显示页<br>
      对于CGA、EGA、MCGA和VGA，其显示页如下表所列： 模式页数显示器类型<br> 
            00H、01H0~7CGA、EGA、MCGA、VGA<br>
            02H、03H0~3CGA<br>
            02H、03H0~7EGA、MCGA、VGA<br>
            07H0~7EGA、VGA<br>
            0DH0~7EGA、VGA<br>
            0EH0~3EGA、VGA<br>
            0FH0~1EGA、VGA<br>
            10H0~1EGA、VGA<br>
            对于PCjr：<br>
            AL＝80H――读取CRT/CPU页寄存器<br>
            81H――设置CPU页寄存器<br>
            82H――设置CRT页寄存器<br>
            83H――设置CRT/CPU页寄存器<br>
            BH＝CRT页(子功能号82H和83H)<br>
            BL＝CPU页(子功能号81H和83H)<br>
<br>
      出口参数：对于前者，无出口参数，但对PCjr在子功能80H~83H调用下，有：BH＝CRT页寄存器，BL＝CPU页寄存器<br>
<br>
(7)、功能06H和07H&nbsp;<br>
      功能描述：初始化屏幕或滚屏<br>
      入口参数：AH＝06H――向上滚屏，07H――向下滚屏<br>
      AL＝滚动行数(0――清窗口)<br>
      BH＝空白区域的缺省属性<br>
      (CH、CL)＝窗口的左上角位置(Y坐标，X坐标)<br>
      (DH、DL)＝窗口的右下角位置(Y坐标，X坐标)<br>
      出口参数：无<br>
<br>
(8)、功能08H&nbsp;<br>
      功能描述：读光标处的字符及其属性<br>
      入口参数：AH＝08H<br>
      BH＝显示页码<br>
      出口参数：AH＝属性<br>
      AL＝字符<br>
<br>
(9)、功能09H&nbsp;<br>
      功能描述：在当前光标处按指定属性显示字符<br>
      入口参数：AH＝09H<br>
      AL＝字符<br>
      BH＝显示页码<br>
      BL＝属性(文本模式)或颜色(图形模式)<br>
      CX＝重复输出字符的次数<br>
      出口参数：无<br>
<br>
(10)、功能0AH&nbsp;<br>
      功能描述：在当前光标处按原有属性显示字符<br>
      入口参数：AH＝0AH<br>
      AL＝字符<br>
      BH＝显示页码<br>
      BL＝颜色(图形模式，仅适用于PCjr)<br>
      CX＝重复输出字符的次数<br>
      出口参数：无<br>
<br>
(11)、功能0BH&nbsp;<br>
      功能描述：设置调色板、背景色或边框<br>
      入口参数：AH＝0BH<br>
      设置颜色：BH＝00H，BL＝颜色<br>
      选择调色板：BH＝01H，BL＝调色板(320×200、4种颜色的图形模式)<br>
      出口参数：无<br>
<br>
(12)、功能0CH&nbsp;<br>
      功能描述：写图形象素<br>
      入口参数：AH＝0CH<br>
      AL＝象素值<br>
      BH＝页码<br>
      (CX、DX)＝图形坐标列(X)、行(Y)<br>
      出口参数：无<br>
<br>
(13)、功能0DH&nbsp;<br>
      功能描述：读图形象素<br>
      入口参数：AH＝0DH<br>
      BH＝页码<br>
      (CX、DX)＝图形坐标列(X)、行(Y)<br>
      出口参数：AL＝象素值<br>
<br>
(14)、功能0EH&nbsp;<br>
      功能描述：在Teletype模式下显示字符<br>
      入口参数：AH＝0EH<br>
      AL＝字符<br>
      BH＝页码<br>
      BL＝前景色(图形模式)<br>
      出口参数：无<br>
<br>
(15)、功能0FH&nbsp;<br>
      功能描述：读取显示器模式<br>
      入口参数：AH＝0FH<br>
      出口参数：AH＝屏幕字符的列数<br>
      AL＝显示模式(参见功能00H中的说明)<br>
      BH＝页码<br>
<br>
(16)、功能10H&nbsp;<br>
      功能描述：颜色中断。其子功能说明如下： 功能号　子功能名称功能号　子功能名称<br>
            00H ― 设置调色板寄存器01H ― 设置边框颜色<br> 
            02H ― 设置调色板和边框03H ― 触发闪烁/亮显位<br> 
            07H ― 读取调色板寄存器08H ― 读取边框颜色<br> 
            09H ― 读取调色板和边框10H ― 设置颜色寄存器<br> 
            12H ― 设置颜色寄存器块13H ― 设置颜色页状态<br> 
            15H ― 读取颜色寄存器17H ― 读取颜色寄存器块<br> 
            1AH ― 读取颜色页状态1BH ― 设置灰度值<br> 
<br>
<br>
(17)、功能11H&nbsp;<br>
      功能描述：字体中断。其子功能说明如下： 子功能号子功能名称<br> 
            00H装入用户字体和可编程控制器<br>
            10H装入用户字体和可编程控制器<br>
            01H装入8×14 ROM字体和可编程控制器<br> 
            11H装入8×14 ROM字体和可编程控制器<br> 
            02H装入8×8 ROM字体和可编程控制器<br> 
            12H装入8×8 ROM字体和可编程控制器<br> 
            03H设置块指示器<br>
            04H装入8×16 ROM字体和可编程控制器<br> 
            14H装入8×16 ROM字体和可编程控制器<br> 
            20H设置INT 1Fh字体指针<br> 
            21H为用户字体设置INT 43h<br> 
            22H为8×14 ROM字体设置INT 43H<br> 
            23H为8×8 ROM字体设置INT 43H<br> 
            24H为8×16 ROM字体设置INT 43H<br> 
            30H读取字体信息<br>
<br>
<br>
(18)、功能12H&nbsp;<br>
      功能描述：显示器的配置中断。其子功能说明如下： 功能号    功能名称 功能号   功能名称<br> 
            10H ― 读取配置信息20H ― 选择屏幕打印<br> 
            30H ― 设置扫描行31H ― 允许/禁止装入缺省调色板<br> 
            32H ― 允许/禁止显示33H ― 允许/禁止灰度求和<br> 
            34H ― 允许/禁止光标模拟35H ― 切换活动显示<br> 
            36H ― 允许/禁止屏幕刷新<br> 
<br>
<br>
(19)、功能13H&nbsp;<br>
      功能描述：在Teletype模式下显示字符串<br>
      入口参数：AH＝13H<br>
      BH＝页码<br>
      BL＝属性(若AL=00H或01H)<br>
      CX＝显示字符串长度<br>
      (DH、DL)＝坐标(行、列)<br>
      ES:BP＝显示字符串的地址 AL＝显示输出方式<br> 
            0――字符串中只含显示字符，其显示属性在BL中。显示后，光标位置不变<br>
            1――字符串中只含显示字符，其显示属性在BL中。显示后，光标位置改变<br>
            2――字符串中含显示字符和显示属性。显示后，光标位置不变<br>
            3――字符串中含显示字符和显示属性。显示后，光标位置改变<br>
<br>
      出口参数：无<br>
<br>
(20)、功能1AH&nbsp;<br>
      功能描述：读取/设置显示组合编码，仅PS/2有效，在此从略<br>
<br>
(21)、功能1BH&nbsp;<br>
      功能描述：读取功能/状态信息，仅PS/2有效，在此从略<br>
<br>
(22)、功能1CH&nbsp;<br>
      功能描述：保存/恢复显示器状态，仅PS/2有效，在此从略<br>
<br>
2、直接磁盘服务(Direct Disk Service――INT 13H)&nbsp;<br>
      00H ―磁盘系统复位0EH ―读扇区缓冲区<br> 
      01H ―读取磁盘系统状态0FH ―写扇区缓冲区<br> 
      02H ―读扇区10H ―读取驱动器状态<br> 
      03H ―写扇区11H ―校准驱动器<br> 
      04H ―检验扇区12H ―控制器RAM诊断<br> 
      05H ―格式化磁道13H ―控制器驱动诊断<br> 
      06H ―格式化坏磁道14H ―控制器内部诊断<br> 
      07H ―格式化驱动器15H ―读取磁盘类型<br> 
      08H ―读取驱动器参数16H ―读取磁盘变化状态<br> 
      09H ―初始化硬盘参数17H ―设置磁盘类型<br> 
      0AH ―读长扇区18H ―设置格式化媒体类型<br> 
      0BH ―写长扇区19H ―磁头保护<br> 
      0CH ―查寻1AH ―格式化ESDI驱动器<br> 
      0DH ―硬盘系统复位<br> 
<br>
(1)、功能00H<br>
      功能描述：磁盘系统复位<br>
      入口参数：AH＝00H<br>
      DL＝驱动器，00H~7FH：软盘；80H~0FFH：硬盘<br>
      出口参数：CF＝0――操作成功，AH＝00H，否则，AH＝状态代码，参见功能号01H中的说明<br>
<br>
(2)、功能01H&nbsp;<br>
      功能描述：读取磁盘系统状态<br>
      入口参数：AH＝01H<br>
      DL＝驱动器，00H~7FH：软盘；80H~0FFH：硬盘<br>
      出口参数：AH＝00H，AL＝状态代码，其定义如下：<br>
      00H ― 无错 01H ― 非法命令<br> 
      02H ― 地址目标未发现03H ― 磁盘写保护(软盘)<br> 
      04H ― 扇区未发现05H ― 复位失败(硬盘)<br> 
      06H ― 软盘取出(软盘)07H ― 错误的参数表(硬盘)<br> 
      08H ― DMA越界(软盘)09H ― DMA超过64K界限<br> 
      0AH ― 错误的扇区标志(硬盘)0BH ― 错误的磁道标志(硬盘)<br> 
      0CH ― 介质类型未发现(软盘)0DH ― 格式化时非法扇区号(硬盘)<br> 
      0EH ― 控制数据地址目标被发现(硬盘)0FH ― DMA仲裁越界(硬盘)<br> 
      10H ― 不正确的CRC或ECC编码11H ― ECC校正数据错(硬盘)<br> 
　CRC:Cyclic Redundancy Check code<br> 
　ECC:Error Checking &amp; Correcting code<br> 
      20H ― 控制器失败40H ― 查找失败<br> 
      80H ― 磁盘超时(未响应)AAH ― 驱动器未准备好(硬盘)<br> 
      BBH ― 未定义的错误(硬盘)CCH ― 写错误(硬盘)<br> 
      E0H ― 状态寄存器错(硬盘)FFH ― 检测操作失败(硬盘)<br> 
<br>
(3)、功能02H&nbsp;<br>
      功能描述：读扇区<br>
      入口参数：AH＝02H<br>
      AL＝扇区数<br>
      CH＝柱面<br>
      CL＝扇区<br>
      DH＝磁头<br>
      DL＝驱动器，00H~7FH：软盘；80H~0FFH：硬盘<br>
      ES:BX＝缓冲区的地址<br>
      出口参数：CF＝0――操作成功，AH＝00H，AL＝传输的扇区数，否则，AH＝状态代码，参见功能号01H中的说明<br>
<br>
(4)、功能03H&nbsp;<br>
      功能描述：写扇区<br>
      入口参数：AH＝03H<br>
      AL＝扇区数<br>
      CH＝柱面<br>
      CL＝扇区<br>
      DH＝磁头<br>
      DL＝驱动器，00H~7FH：软盘；80H~0FFH：硬盘<br>
      ES:BX＝缓冲区的地址<br>
      出口参数：CF＝0――操作成功，AH＝00H，AL＝传输的扇区数，否则，AH＝状态代码，参见功能号01H中的说明<br>
<br>
(5)、功能04H&nbsp;<br>
      功能描述：检验扇区<br>
      入口参数：AH＝04H<br>
      AL＝扇区数<br>
      CH＝柱面<br>
      CL＝扇区<br>
      DH＝磁头<br>
      DL＝驱动器，00H~7FH：软盘；80H~0FFH：硬盘<br>
      ES:BX＝缓冲区的地址<br>
      出口参数：CF＝0――操作成功，AH＝00H，AL＝被检验的扇区数，否则，AH＝状态代码，参见功能号01H中的说明<br>
<br>
(6)、功能05H&nbsp;<br>
      功能描述：格式化磁道<br>
      入口参数：AH＝05H<br>
      AL＝交替(Interleave)<br>
      CH＝柱面<br>
      DH＝磁头<br>
      DL＝驱动器，00H~7FH：软盘；80H~0FFH：硬盘<br>
      ES:BX＝地址域列表的地址<br>
      出口参数：CF＝0――操作成功，AH＝00H，否则，AH＝状态代码，参见功能号01H中的说明<br>
<br>
(7)、功能06H&nbsp;<br>
      功能描述：格式化坏磁道<br>
      入口参数：AH＝06H<br>
      AL＝交替<br>
      CH＝柱面<br>
      DH＝磁头<br>
      DL＝80H~0FFH：硬盘<br>
      ES:BX＝地址域列表的地址<br>
      出口参数：CF＝0――操作成功，AH＝00H，否则，AH＝状态代码，参见功能号01H中的说明<br>
<br>
(8)、功能07H&nbsp;<br>
      功能描述：格式化驱动器<br>
      入口参数：AH＝07H<br>
      AL＝交替<br>
      CH＝柱面<br>
      DL＝80H~0FFH：硬盘<br>
      出口参数：CF＝0――操作成功，AH＝00H，否则，AH＝状态代码，参见功能号01H中的说明<br>
<br>
(9)、功能08H&nbsp;<br>
      功能描述：读取驱动器参数<br>
      入口参数：AH＝08H<br>
      DL＝驱动器，00H~7FH：软盘；80H~0FFH：硬盘<br>
      出口参数：CF＝1――操作失败，AH＝状态代码，参见功能号01H中的说明，否则， BL＝01H ― 360K<br> 
            ＝02H ― 1.2M<br> 
            ＝03H ― 720K<br> 
            ＝04H ― 1.44M<br> 
<br>
      CH＝柱面数的低8位<br>
      CL的位7-6＝柱面数的该2位<br>
      CL的位5-0＝扇区数<br>
      DH＝磁头数<br>
      DL＝驱动器数<br>
      ES:DI＝磁盘驱动器参数表地址<br>
<br>
(10)、功能09H&nbsp;<br>
      功能描述：初始化硬盘参数<br>
      入口参数：AH＝09H<br>
      DL＝80H~0FFH：硬盘(还有有关参数表问题，在此从略)<br>
      出口参数：CF＝0――操作成功，AH＝00H，否则，AH＝状态代码，参见功能号01H中的说明<br>
<br>
(11)、功能0AH&nbsp;<br>
      功能描述：读长扇区，每个扇区随带四个字节的ECC编码<br>
      入口参数：AH＝0AH<br>
      AL＝扇区数<br>
      CH＝柱面<br>
      CL＝扇区<br>
      DH＝磁头<br>
      DL＝80H~0FFH：硬盘<br>
      ES:BX＝缓冲区的地址<br>
      出口参数：CF＝0――操作成功，AH＝00H，AL＝传输的扇区数，否则，AH＝状态代码，参见功能号01H中的说明<br>
<br>
(12)、功能0BH&nbsp;<br>
      功能描述：写长扇区，每个扇区随带四个字节的ECC编码<br>
      入口参数：AH＝0BH<br>
      AL＝扇区数<br>
      CH＝柱面<br>
      CL＝扇区<br>
      DH＝磁头<br>
      DL＝80H~0FFH：硬盘<br>
      ES:BX＝缓冲区的地址<br>
      出口参数：CF＝0――操作成功，AH＝00H，AL＝传输的扇区数，否则，AH＝状态代码，参见功能号01H中的说明<br>
<br>
(13)、功能0CH&nbsp;<br>
      功能描述：查寻<br>
      入口参数：AH＝0CH<br>
      CH＝柱面的低8位<br>
      CL(7-6位)＝柱面的高2位<br>
      DH＝磁头<br>
      DL＝80H~0FFH：硬盘<br>
      出口参数：CF＝0――操作成功，AH＝00H，否则，AH＝状态代码，参见功能号01H中的说明<br>
<br>
(14)、功能0DH&nbsp;<br>
      功能描述：硬盘系统复位<br>
      入口参数：AH＝0DH<br>
      DL＝80H~0FFH：硬盘<br>
      出口参数：CF＝0――操作成功，AH＝00H，否则，AH＝状态代码，参见功能号01H中的说明<br>
<br>
(15)、功能0EH&nbsp;<br>
      功能描述：读扇区缓冲区<br>
      入口参数：AH＝0EH<br>
      ES:BX＝缓冲区的地址<br>
      出口参数：CF＝0――操作成功，否则，AH＝状态代码，参见功能号01H中的说明<br>
<br>
(16)、功能0FH&nbsp;<br>
      功能描述：写扇区缓冲区<br>
      入口参数：AH＝0FH<br>
      ES:BX＝缓冲区的地址<br>
      出口参数：CF＝0――操作成功，否则，AH＝状态代码，参见功能号01H中的说明<br>
<br>
(17)、功能10H&nbsp;<br>
      功能描述：读取驱动器状态<br>
      入口参数：AH＝10H<br>
      DL＝80H~0FFH：硬盘<br>
      出口参数：CF＝0――操作成功，AH＝00H，否则，AH＝状态代码，参见功能号01H中的说明<br>
<br>
(18)、功能11H&nbsp;<br>
      功能描述：校准驱动器<br>
      入口参数：AH＝11H<br>
      DL＝80H~0FFH：硬盘<br>
      出口参数：CF＝0――操作成功，AH＝00H，否则，AH＝状态代码，参见功能号01H中的说明<br>
<br>
(19)、功能12H&nbsp;<br>
      功能描述：控制器RAM诊断<br>
      入口参数：AH＝12H<br>
      出口参数：CF＝0――操作成功，否则，AH＝状态代码，参见功能号01H中的说明<br>
<br>
(20)、功能13H&nbsp;<br>
      功能描述：控制器驱动诊断<br>
      入口参数：AH＝13H<br>
      出口参数：CF＝0――操作成功，否则，AH＝状态代码，参见功能号01H中的说明<br>
<br>
(21)、功能14H&nbsp;<br>
      功能描述：控制器内部诊断<br>
      入口参数：AH＝14H<br>
      出口参数：CF＝0――操作成功，否则，AH＝状态代码，参见功能号01H中的说明<br>
<br>
(22)、功能15H&nbsp;<br>
      功能描述：读取磁盘类型<br>
      入口参数：AH＝15H<br>
      DL＝驱动器，00H~7FH：软盘；80H~0FFH：硬盘<br>
      出口参数：CF＝1――操作失败，AH＝状态代码，参见功能号01H中的说明， 否则，AH＝00H ― 未安装驱动器<br> 
            ＝01H ― 无改变线支持的软盘驱动器<br> 
            ＝02H ― 带有改变线支持的软盘驱动器<br> 
            ＝03H ― 硬盘，CX:DX＝512字节的扇区数<br> 
<br>
<br>
(23)、功能16H&nbsp;<br>
      功能描述：读取磁盘变化状态<br>
      入口参数：AH＝16H<br>
      DL＝00H~7FH：软盘<br>
      出口参数：CF＝0――磁盘未改变，AH＝00H，否则，AH＝06H，参见功能号01H中的说明<br>
<br>
(24)、功能17H&nbsp;<br>
      功能描述：设置磁盘类型<br>
      入口参数：AH＝17H<br>
      DL＝00H~7FH：软盘 AL＝00H ― 未用<br> 
            ＝01H ― 360K在360K驱动器中<br> 
            ＝02H ― 360K在1.2M驱动器中<br> 
            ＝03H ― 1.2M在1.2M驱动器中<br> 
            ＝04H ― 720K在720K驱动器中<br> 
<br>
      出口参数：CF＝0――操作成功，AH＝00H，否则，AH＝状态编码，参见功能号01H中的说明<br>
<br>
(25)、功能18H&nbsp;<br>
      功能描述：设置格式化媒体类型<br>
      入口参数：AH＝18H<br>
      CH＝柱面数<br>
      CL＝每磁道的扇区数<br>
      DL＝00H~7FH：软盘<br>
      出口参数：CF＝0――操作成功，AH＝00H，ES:DI＝介质类型参数表地址，否则，AH＝状态编码，参见功能号01H中的说明<br>
<br>
(26)、功能19H&nbsp;<br>
      功能描述：磁头保护，仅在PS/2中有效，在此从略<br>
<br>
(27)、功能1AH&nbsp;<br>
      功能描述：格式化ESDI驱动器，仅在PS/2中有效，在此从略<br>
<br>
3、串行口服务(Serial Port Service――INT 14H)&nbsp;<br>
      00H ―初始化通信口03H ―读取通信口状态<br> 
      01H ―向通信口输出字符04H ―扩充初始化通信口<br> 
      02H ―从通信口读入字符<br> 
<br>
(1)、功能00H<br>
      功能描述：初始化通信口<br>
      入口参数：AH＝00H<br>
      DX＝初始化通信口号(0＝COM1，1＝COM2，……)<br>
      AL＝初始化参数，参数的说明如下： 波特率奇偶位停止位字的位数<br> 
            76543210<br>
            000 = 110X0 = None0 = 1 bit10 = 7 bits<br> 
            001 = 15001 = Odd1 = 2 bits11 = 8 bits<br> 
            010 = 30011 = Even<br> 
            011 = 600<br> 
            100 = 1200<br> 
            101 = 2400<br> 
            110 = 4800<br> 
            111 = 9600<br> 
<br>
      对于PS/2，可用INT 14H之功能04H和05H来初始化其通信速率大于9600。<br> 
      出口参数：AH＝通信口状态，各状态位为1时的含义如下： 位7―超时<br> 
            位6―传递移位寄存器为空<br>
            位5―传递保持寄存器为空<br>
            位4―发现终止位3―发现帧错误<br>
            位2―发现奇偶错<br>
            位1―发现越界错<br>
            位0―接受数据准备好<br>
<br>
      AL＝Modem状态<br>
            位7―接受单线信号诊断<br>
            位6―环指示器<br>
            位5―数据发送准备好<br>
            位4―清除数据，再发送位3―改变在接受线上的信号诊断<br>
            位2―后边界环指示器<br>
            位1―改变“数据准备好”状态<br>
            位0―改变“清除―发送”状态<br>
<br>
<br>
(2)、功能01H&nbsp;<br>
      功能描述：向通信口输出字符<br>
      入口参数：AH＝01H<br>
      AL＝字符<br>
      DX＝初始化通信口号(0＝COM1，1＝COM2，……)<br>
      出口参数：AL的值不变<br>
      AH的位7＝0――操作成功，通信口状态，AH的位6~0是其状态位<br>
<br>
(3)、功能02H&nbsp;<br>
      功能描述：从通信口读入字符<br>
      入口参数：AH＝02H<br>
      DX＝初始化通信口号(0＝COM1，1＝COM2，……)<br>
      出口参数：AL＝接受的字符<br>
      AH的位7＝0――操作成功，通信口状态，AH的位6~0是其状态位<br>
<br>
(4)、功能03H&nbsp;<br>
      功能描述：读取通信口状态<br>
      入口参数：AH＝03H<br>
      DX＝初始化通信口号(0＝COM1，1＝COM2，……)<br>
      出口参数：AH＝通信口状态，AL＝Modem状态，参见功能号00H中的说明<br>
<br>
(5)、功能04H&nbsp;<br>
      功能描述：扩充初始化通信口，仅在PS/2中有效，在此从略<br>
<br>
4、杂项系统服务(Miscellaneous System Service――INT 15H)&nbsp;<br>
      00H ―开盒式磁带机马达85H ―系统请求(SysReq)键<br> 
      01H ―关盒式磁带机马达86H ―延迟<br> 
      02H ―读盒式磁带机87H ―移动扩展内存块<br> 
      03H ―写盒式磁带机88H ―读取扩展内存大小<br> 
      0FH ―格式化ESDI驱动器定期中断89H ―进入保护模式<br> 
      21H ―读/写自检(POST)错误记录90H ―设备等待<br> 
      4FH ―键盘截听91H ―设备加电自检<br> 
      80H ―设备打开C0H ―读取系统环境<br> 
      81H ―设备关闭C1H ―读取扩展BIOS数据区地址<br> 
      82H ―进程终止C2H ―鼠标图形<br> 
      83H ―事件等待C3H ―设置WatcHdog超时<br> 
      84H ―读游戏杆C4H ―可编程选项选择<br> 
<br>
(1)、功能00H<br>
      功能描述：开盒式磁带机马达<br>
      入口参数：AH＝00H<br>
      出口参数：CF＝0――操作成功，否则，AH＝状态(86H，若未安装盒式磁带机)<br>
<br>
(2)、功能01H<br>
      功能描述：关盒式磁带机马达<br>
      入口参数：AH＝01H<br>
      出口参数：CF＝0――操作成功，否则，AH＝状态(86H，若未安装盒式磁带机)<br>
<br>
(3)、功能02H<br>
      功能描述：读盒式磁带机<br>
      入口参数：AH＝02H<br>
      CX＝读入的字节数<br>
      ES:BX＝存放数据的缓冲区地址<br>
      出口参数：CF＝0――操作成功，DX＝实际读入的字节数，ES:BX指向最后一个字节的后面地址，否则，AH＝状态码，其值含义如下： 01H&nbsp;<br>
            ―― CRC校验码错80H ―― 非法命令<br> 
            02H ―― 位信号混乱86H ―― 未安装盒式磁带机<br> 
            04H ―― 无发现数据<br> 
<br>
<br>
(4)、功能03H<br>
      功能描述：写盒式磁带机<br>
      入口参数：AH＝03H<br>
      CX＝要写入的字节数<br>
      ES:BX＝已存数据的缓冲区地址<br>
      出口参数：CF＝0――操作成功，CX＝00H，ES:BX指向最后一个字节的后面地址，否则，AH＝状态码，其值含义如下： 80H ――&nbsp;<br>
            非法命令86H ―― 未安装盒式磁带机<br> 
<br>
<br>
(5)、功能0FH<br>
      功能描述：格式化ESDI驱动器定期中断，仅在PS/2中有效，在此从略<br>
<br>
(6)、功能21H<br>
      功能描述：读/写自检(POST)错误记录，仅在PS/2中有效，在此从略<br>
<br>
(7)、功能4FH<br>
      功能描述：键盘截听，仅在PS/2中有效，在此从略<br>
<br>
(8)、功能80H<br>
      功能描述：打开设备<br>
      入口参数：AH＝80H<br>
      BX＝设备号<br>
      CX＝进程号<br>
      出口参数：CF＝0――操作成功，AH＝00H，否则，AH＝状态码<br>
<br>
(9)、功能81H<br>
      功能描述：关闭设备<br>
      入口参数：AH＝81H<br>
      BX＝设备号<br>
      CX＝进程号<br>
      出口参数：CF＝0――操作成功，AH＝00H，否则，AH＝状态码<br>
<br>
(10)、功能82H<br>
      功能描述：进程终止<br>
      入口参数：AH＝81H<br>
      BX＝进程号<br>
      出口参数：CF＝0――操作成功，AH＝00H，否则，AH＝状态码<br>
<br>
(11)、功能83H<br>
      功能描述：事件等待<br>
      入口参数：AH＝83H 若需要事件等待，则：AL＝00H<br> 
            CX:DX＝千分秒<br>
            ES:BX＝信号量字节的地址<br>
            否则，调用参数为AL＝01H<br>
<br>
      出口参数：若调用时，AL＝00H，操作成功――CF＝0，否则，CF＝1<br>
<br>
(12)、功能84H<br>
      功能描述：读游戏杆<br>
      入口参数：AH＝84H<br>
      DX＝00H――读取开关设置<br>
　＝01H――读取阻力输入<br>
      出口参数：CF＝1H――操作失败，否则，<br>
　DX＝00H时，AL＝开关设置(位7～4)<br>
　DX＝01H时，AX、BX、CX和DX分别为A(x)、A(y)、B(x)和B(y)的值<br>
<br>
(13)、功能85H&nbsp;<br>
      功能描述：系统请求(SysReq)键<br>
      入口参数：AH＝85H<br>
      AL＝00H――键按下<br>
　＝01H――键放开<br>
      出口参数：CF＝0――操作成功，AH＝00H，否则，AH＝状态码<br>
<br>
(14)、功能86H&nbsp;<br>
      功能描述：延迟<br>
      入口参数：AH＝86H<br>
      CX:DX＝千分秒<br>
      出口参数：CF＝0――操作成功，AH＝00H<br>
<br>
(15)、功能87H&nbsp;<br>
      功能描述：从常规内存和扩展内存之间移动扩展内存块<br>
      入口参数：AH＝87H<br>
      CX＝移动的字数<br>
      ES:SI＝GDT(Global Descriptor Table)的地址，其结构定义如下： 偏移量存储的信息<br> 
            00h-0Fh保留，但现全为0<br>
            10h-11h段的长度(2CX-1或更大)<br>
            12h-14h24位源地址<br>
            15h访问权限字节(其值为93h)<br>
            16h-17h保留，但现全为0<br>
            18h-19h段的长度(2CX-1或更大)<br>
            1Ah-1Ch 24位目标源地址<br> 
            1Dh访问权限字节(其值为93h)<br>
            1Eh-2Fh保留，但现全为0<br>
<br>
      出口参数：CF＝0――操作成功，AH＝00H，否则，AH＝状态码，其含义如下：<br>
　　01H ―― RAM奇偶错<br> 
　　02H ―― 异常中断错<br> 
　　03H ―― 20号线门地址失败<br> 
<br>
(16)、功能88H&nbsp;<br>
      功能描述：读取扩展内存大小<br>
      入口参数：AH＝88H<br>
      出口参数：AX＝扩展内存字节数(以K为单位)<br>
<br>
(17)、功能89H&nbsp;<br>
      功能描述：进入保护模式，CPU从实模式进入保护模式<br>
      入口参数：AH＝89H<br>
      BH＝IRQ0的中断号<br>
      BL＝IRQ8的中断号<br>
      ES:SI＝GDT的地址(参见功能号87H)<br>
      出口参数：CF＝1――操作失败，AH＝0FFH，否则，AH＝00H，CS、DS、ES和SS都是用户定义的选择器<br>
<br>
(18)、功能90H&nbsp;<br>
      功能描述：设备等待<br>
      入口参数：AH＝90H AL＝驱动器类型，具体的驱动器类型定义如下：<br> 
            ＝00H~7FH――串行再重用设备<br>
            ＝80H~0BFH――可重入式设备<br>
            ＝0C0H~0FFH――等待访问设备，没有自检功能<br>
                  00h ― 磁盘<br> 
                  02h ― 键盘<br> 
                  80h ― 网络<br> 
                  FDh ― 软盘马达启动01h ― 软盘<br> 
                  03h ― 点设备(Pointing Device)<br> 
                  FCh ― 硬盘复位<br> 
                  FEh ― 打印机<br> 
<br>
<br>
      ES:BX＝对驱动器类型80H~0FFH的请求块地址<br>
      出口参数：CF＝1――操作失败，否则，AH＝00H<br>
<br>
(19)、功能91H&nbsp;<br>
      功能描述：设备加电自检<br>
      入口参数：AH＝91H<br>
      AL＝00H~7FH――串行再重用设备<br>
　＝80H~0BFH――可重入式设备<br>
      出口参数：AH＝00H<br>
<br>
(20)、功能0C0H&nbsp;<br>
      功能描述：读取系统环境<br>
      入口参数：AH＝0C0H<br>
      出口参数：ES:BX＝配置表地址，配置表的定义如下： 偏移量含义说明<br> 
            00h-01h表的大小(字节数)<br>
            02h系统模型<br>
            03h系统子模型<br>
            04hBIOS版本号<br>
            05h配置标志，其各位为1时的说明如下：<br>
　　位7―DMA通道3使用<br>
　　位6―存在从属8259<br>
　　位5―实时时钟有效<br>
　　位4―键盘截听有效<br>
　　位3―等待外部事件有效<br>
　　位2―扩展BIOS数据区<br>
　　位1―微通道设施<br>
　　位0―保留<br>
            06h-09h保留<br>
<br>
<br>
(21)、功能C1H&nbsp;<br>
      功能描述：读取扩展BIOS数据区地址，仅在PS/2中有效，在此从略<br>
<br>
(22)、功能C2H&nbsp;<br>
      功能描述：鼠标图形，仅在PS/2中有效，在此从略<br>
<br>
(23)、功能C3H&nbsp;<br>
      功能描述：设置WatcHdog超时，仅在PS/2中有效，在此从略<br>
<br>
(24)、功能C4H<br>
      功能描述：可编程选项选择，仅在PS/2中有效，在此从略<br>
<br>
5、键盘服务(Keyboard Service――INT 16H)&nbsp;<br>
      00H、10H ―从键盘读入字符03H ―设置重复率<br> 
      01H、11H ―读取键盘状态04H ―设置键盘点击<br> 
      02H, 12H ―读取键盘标志05H ―字符及其扫描码进栈<br> 
<br>
(1)、功能00H和10H<br>
      功能描述：从键盘读入字符<br>
      入口参数：AH＝00H――读键盘<br>
            ＝10H――读扩展键盘，可根据0000:0496H单元的内容判断：扩展键盘是否有效<br>
<br>
      出口参数：AH＝键盘的扫描码<br>
      AL＝字符的ASCII码<br>
<br>
(2)、功能01H和11H<br>
      功能描述：读取键盘状态<br>
      入口参数：AH＝01H――检查普通键盘<br>
            ＝11H――检查扩展键盘<br>
<br>
      出口参数：ZF＝1――无字符输入，否则，AH＝键盘的扫描码，AL＝ASCII码。<br>
<br>
(3)、功能02H和12H<br>
      功能描述：读取键盘标志<br>
      入口参数：AH＝02H――普通键盘的移位标志<br>
            ＝12H――扩展键盘的移位标志<br>
<br>
      出口参数：AL＝键盘标志(02H和12H都有效)，其各位之值为1时的含义如下： 位7―INS开状态位3―ALT键按下<br> 
            位6―CAPS LOCK开状态位2―CTRL键按下<br> 
            位5―NUM LOCK开状态位1―左SHIFT键按下<br> 
            位4―SCROLL LOCK开状态位0―右SHIFT键按下<br> 
<br>
      AH＝扩展键盘的标志(12H有效)，其各位之值为1时的含义如下：<br>
            位7―SysReq键按下位3―右ALT键按下<br>
            位6―CAPS LOCK键按下位2―右CTRL键按下<br> 
            位5―NUM LOCK键按下位1―左ALT键按下<br> 
            位4―SCROLL键按下位0―左CTRL键按下<br>
<br>
<br>
(4)、功能03H<br>
      功能描述：设置重复率<br>
      入口参数：AH＝03H 对于PC/AT和PS/2：AL＝05H<br> 
            BH＝重复延迟<br>
            BL＝重复率<br>
            对于PCjr：AL＝00H――装入缺省的速率和延迟<br>
                  ＝01H――增加初始延迟<br>
                  ＝02H――重复频率降低一半<br>
                  ＝03H――增加延迟和降低一半重复频率<br>
                  ＝04H――关闭键盘重复功能<br>
<br>
<br>
      出口参数：无<br>
<br>
(5)、功能04H<br>
      功能描述：设置键盘点击<br>
      入口参数：AH＝04H AL＝00H――关闭键盘点击功能<br> 
            ＝01H――打开键盘点击功能<br>
<br>
      出口参数：无<br>
<br>
(6)、功能05H<br>
      功能描述：字符及其扫描码进栈<br>
      入口参数：AH＝05H<br>
      CH＝字符的描述码<br>
      CL＝字符的ASCII码<br>
      出口参数：CF＝1――操作成功，AL＝00H，否则，AL＝01H<br>
<br>
6、并行口服务(Parallel Port Service――INT 17H)&nbsp;<br>
      00H ―向打印机输出字符<br> 
      01H ―初始化打印机端口<br> 
      02H ―读取打印机状态<br> 
<br>
(1)、功能00H<br>
      功能描述：向打印机输出字符<br>
      入口参数：AH＝00H<br>
      AL＝输出的字符<br>
      DX＝打印机号(0―LPT1，1―LPT2，2―LPT3，……)<br>
      出口参数：AH＝打印机状态。其各位为1时的含义如下： 位7―打印机空闲   位3―I/O错误<br> 
            位6―打印机响应位2―保留<br>
            位5―无纸位1―保留<br>
            位4―打印机被选位0―打印机超时<br>
<br>
<br>
(2)、功能01H<br>
      功能描述：初始化打印机端口<br>
      入口参数：AH＝01H<br>
      DX＝打印机号(0―LPT1，1―LPT2，2―LPT3，……)<br>
      出口参数：AH＝打印机状态。各位定义如下功能00H所示<br>
<br>
(3)、功能02H<br>
      功能描述：读取打印机状态<br>
      入口参数：AH＝02H<br>
      DX＝打印机号(0―LPT1，1―LPT2，2―LPT3，……)<br>
      出口参数：AH＝打印机状态。各位定义如下功能00H所示<br>
<br>
7、时钟服务(Clock Service――INT 1AH)&nbsp;<br>
      00H ―读取时钟“滴答”计数06H ―设置闹钟<br> 
      01H ―设置时钟“滴答”计数07H ―闹钟复位<br> 
      02H ―读取时间0AH ―读取天数计数<br> 
      03H ―设置时间0BH ―设置天数计数<br> 
      04H ―读取日期 80H ―设置声音源信息&nbsp;<br>
      05H ―设置日期<br> 
<br>
(1)、功能00H<br>
      功能描述：读取时钟“滴答”计数<br>
      入口参数：AH＝00H<br>
      出口参数：AL＝00H――未过午夜，否则，表示已过午夜<br>
      CX:DX＝时钟“滴答”计数<br>
<br>
(2)、功能01H<br>
      功能描述：设置时钟“滴答”计数<br>
      入口参数：AH＝01H<br>
      CX:DX＝时钟“滴答”计数<br>
      出口参数：无<br>
<br>
(3)、功能02H<br>
      功能描述：读取时间<br>
      入口参数：AH＝02H<br>
      出口参数：CH＝BCD码格式的小时<br>
      CL＝BCD码格式的分钟<br>
      DH＝BCD码格式的秒<br>
      DL＝00H――标准时间，否则，夏令时<br>
      CF＝0――时钟在走，否则，时钟停止<br>
<br>
(4)、功能03H<br>
      功能描述：设置时间<br>
      入口参数：AH＝03H<br>
      CH＝BCD码格式的小时<br>
      CL＝BCD码格式的分钟<br>
      DH＝BCD码格式的秒<br>
      DL＝00H――标准时间，否则，夏令时<br>
      出口参数：无<br>
<br>
(5)、功能04H<br>
      功能描述：读取日期<br>
      入口参数：AH＝04H<br>
      出口参数：CH＝BCD码格式的世纪<br>
      CL＝BCD码格式的年<br>
      DH＝BCD码格式的月<br>
      DL＝BCD码格式的日<br>
      CF＝0――时钟在走，否则，时钟停止<br>
<br>
(6)、功能05H<br>
      功能描述：设置日期<br>
      入口参数：AH＝05H<br>
      CH＝BCD码格式的世纪<br>
      CL＝BCD码格式的年<br>
      DH＝BCD码格式的月<br>
      DL＝BCD码格式的日<br>
      出口参数：无<br>
<br>
(7)、功能06H<br>
      功能描述：设置闹钟<br>
      入口参数：AH＝06H<br>
      CH＝BCD码格式的小时<br>
      CL＝BCD码格式的分钟<br>
      DH＝BCD码格式的秒<br>
      出口参数：CF＝０――操作成功，否则，闹钟已设置或时钟已停止<br>
<br>
(8)、功能07H<br>
      功能描述：闹钟复位<br>
      入口参数：AH＝07H<br>
      出口参数：无<br>
<br>
(9)、功能0AH<br>
      功能描述：读取天数计数，仅在PS/2有效，在此从略<br>
<br>
(10)、功能0BH<br>
      功能描述：设置天数计数，仅在PS/2有效，在此从略<br>
<br>
(11)、功能80H<br>
      功能描述：设置声音源信息<br>
      入口参数：AH＝80H<br>
            AL＝声音源<br>
            ＝00H――8253可编程计时器，通道2<br>
            ＝01H――盒式磁带输入<br>
            ＝02H――I/O通道上的"Audio In"<br> 
            ＝03H――声音产生芯片<br>
<br>
      出口参数：无<br>
<br>
8、直接系统服务(Direct System Service)&nbsp;<br>
INT 00H ―“0”作除数<br> 
INT 01H ―单步中断<br> 
INT 02H ―非屏蔽中断(NMI)<br> 
INT 03H ―断点中断<br> 
INT 04H ―算术溢出错误<br> 
INT 05H ―打印屏幕和BOUND越界<br> 
INT 06H ―非法指令错误<br> 
INT 07H ―处理器扩展无效<br> 
INT 08H ―时钟中断<br> 
INT 09H ―键盘输入<br> 
INT 0BH ―通信口(COM2:)<br> 
INT 0CH ―通信口(COM1:)<br> 
INT 0EH ―磁盘驱动器输入/输出<br> 
INT 11H ―读取设备配置<br> 
INT 12H ―读取常规内存大小(返回值AX为内存容量，以K为单位)<br> 
INT 18H ―ROM BASIC<br> 
INT 19H ―重启动系统<br> 
INT 1BH ―CTRL+BREAK处理程序<br> 
INT 1CH ―用户时钟服务<br> 
INT 1DH ―指向显示器参数表指针<br> 
INT 1EH ―指向磁盘驱动器参数表指针<br> 
INT 1FH ―指向图形字符模式表指针&nbsp;<br>
<br>
<br>
注：资料来自"小温的专栏"</p>     
<center><b><a href="../"><font face="华文行楷" size="5" color="#3333FF">返回目录</font></a></b></center></body></html>
